Copyright | (c) 2011 Felipe A. Lessa |
---|---|
License | BSD3 (see LICENSE) |
Maintainer | felipe.lessa@gmail.com |
Stability | provisional |
Portability | portable (needs FFI) |
Safe Haskell | None |
Language | Haskell98 |
Crypto.Skein.Internal
Description
Basic wrappers around the C library. You shouldn't need to use these functions. Instead, use the high-level Crypto.Skein module.
Synopsis
- sKEIN_SUCCESS :: CInt
- sKEIN_FAIL :: CInt
- sKEIN_BAD_HASHLEN :: CInt
- check :: IO CInt -> IO ()
- newtype Skein256Ctx = S256Ctx {
- unS256Ctx :: ByteString
- skein256Init :: Ptr Skein256Ctx -> CSize -> IO CInt
- skein256Update :: Ptr Skein256Ctx -> Ptr Word8 -> CSize -> IO CInt
- skein256Final :: Ptr Skein256Ctx -> Ptr Word8 -> IO CInt
- skein256InitExt :: Ptr Skein256Ctx -> CSize -> Word64 -> Ptr Word8 -> CSize -> IO CInt
- skein256FinalPad :: Ptr Skein256Ctx -> Ptr Word8 -> IO CInt
- skein256Output :: Ptr Skein256Ctx -> Ptr Word8 -> IO CInt
- newtype Skein512Ctx = S512Ctx {
- unS512Ctx :: ByteString
- skein512Init :: Ptr Skein512Ctx -> CSize -> IO CInt
- skein512Update :: Ptr Skein512Ctx -> Ptr Word8 -> CSize -> IO CInt
- skein512Final :: Ptr Skein512Ctx -> Ptr Word8 -> IO CInt
- skein512InitExt :: Ptr Skein512Ctx -> CSize -> Word64 -> Ptr Word8 -> CSize -> IO CInt
- skein512FinalPad :: Ptr Skein512Ctx -> Ptr Word8 -> IO CInt
- skein512Output :: Ptr Skein512Ctx -> Ptr Word8 -> IO CInt
- newtype Skein1024Ctx = S1024Ctx {
- unS1024Ctx :: ByteString
- skein1024Init :: Ptr Skein1024Ctx -> CSize -> IO CInt
- skein1024Update :: Ptr Skein1024Ctx -> Ptr Word8 -> CSize -> IO CInt
- skein1024Final :: Ptr Skein1024Ctx -> Ptr Word8 -> IO CInt
- skein1024InitExt :: Ptr Skein1024Ctx -> CSize -> Word64 -> Ptr Word8 -> CSize -> IO CInt
- skein1024FinalPad :: Ptr Skein1024Ctx -> Ptr Word8 -> IO CInt
- skein1024Output :: Ptr Skein1024Ctx -> Ptr Word8 -> IO CInt
- sKEIN_SEQUENTIAL :: Word64
Return codes
sKEIN_SUCCESS :: CInt Source #
sKEIN_FAIL :: CInt Source #
sKEIN_BAD_HASHLEN :: CInt Source #
Skein-256
newtype Skein256Ctx Source #
Instances
Storable Skein256Ctx Source # | |
Defined in Crypto.Skein.Internal Methods sizeOf :: Skein256Ctx -> Int alignment :: Skein256Ctx -> Int peekElemOff :: Ptr Skein256Ctx -> Int -> IO Skein256Ctx pokeElemOff :: Ptr Skein256Ctx -> Int -> Skein256Ctx -> IO () peekByteOff :: Ptr b -> Int -> IO Skein256Ctx pokeByteOff :: Ptr b -> Int -> Skein256Ctx -> IO () peek :: Ptr Skein256Ctx -> IO Skein256Ctx poke :: Ptr Skein256Ctx -> Skein256Ctx -> IO () |
skein256Init :: Ptr Skein256Ctx -> CSize -> IO CInt Source #
skein256Update :: Ptr Skein256Ctx -> Ptr Word8 -> CSize -> IO CInt Source #
skein256Final :: Ptr Skein256Ctx -> Ptr Word8 -> IO CInt Source #
skein256InitExt :: Ptr Skein256Ctx -> CSize -> Word64 -> Ptr Word8 -> CSize -> IO CInt Source #
skein256FinalPad :: Ptr Skein256Ctx -> Ptr Word8 -> IO CInt Source #
skein256Output :: Ptr Skein256Ctx -> Ptr Word8 -> IO CInt Source #
Skein-512
newtype Skein512Ctx Source #
Instances
Storable Skein512Ctx Source # | |
Defined in Crypto.Skein.Internal Methods sizeOf :: Skein512Ctx -> Int alignment :: Skein512Ctx -> Int peekElemOff :: Ptr Skein512Ctx -> Int -> IO Skein512Ctx pokeElemOff :: Ptr Skein512Ctx -> Int -> Skein512Ctx -> IO () peekByteOff :: Ptr b -> Int -> IO Skein512Ctx pokeByteOff :: Ptr b -> Int -> Skein512Ctx -> IO () peek :: Ptr Skein512Ctx -> IO Skein512Ctx poke :: Ptr Skein512Ctx -> Skein512Ctx -> IO () |
skein512Init :: Ptr Skein512Ctx -> CSize -> IO CInt Source #
skein512Update :: Ptr Skein512Ctx -> Ptr Word8 -> CSize -> IO CInt Source #
skein512Final :: Ptr Skein512Ctx -> Ptr Word8 -> IO CInt Source #
skein512InitExt :: Ptr Skein512Ctx -> CSize -> Word64 -> Ptr Word8 -> CSize -> IO CInt Source #
skein512FinalPad :: Ptr Skein512Ctx -> Ptr Word8 -> IO CInt Source #
skein512Output :: Ptr Skein512Ctx -> Ptr Word8 -> IO CInt Source #
Skein-1024
newtype Skein1024Ctx Source #
Constructors
S1024Ctx | |
Fields
|
Instances
Storable Skein1024Ctx Source # | |
Defined in Crypto.Skein.Internal Methods sizeOf :: Skein1024Ctx -> Int alignment :: Skein1024Ctx -> Int peekElemOff :: Ptr Skein1024Ctx -> Int -> IO Skein1024Ctx pokeElemOff :: Ptr Skein1024Ctx -> Int -> Skein1024Ctx -> IO () peekByteOff :: Ptr b -> Int -> IO Skein1024Ctx pokeByteOff :: Ptr b -> Int -> Skein1024Ctx -> IO () peek :: Ptr Skein1024Ctx -> IO Skein1024Ctx poke :: Ptr Skein1024Ctx -> Skein1024Ctx -> IO () |
skein1024Init :: Ptr Skein1024Ctx -> CSize -> IO CInt Source #
skein1024Update :: Ptr Skein1024Ctx -> Ptr Word8 -> CSize -> IO CInt Source #
skein1024Final :: Ptr Skein1024Ctx -> Ptr Word8 -> IO CInt Source #
skein1024InitExt :: Ptr Skein1024Ctx -> CSize -> Word64 -> Ptr Word8 -> CSize -> IO CInt Source #
skein1024FinalPad :: Ptr Skein1024Ctx -> Ptr Word8 -> IO CInt Source #
skein1024Output :: Ptr Skein1024Ctx -> Ptr Word8 -> IO CInt Source #
Misc constants
sKEIN_SEQUENTIAL :: Word64 Source #
Pass to InitExt
to get sequential processing.