{-# LINE 1 "src/Network/Security/GssTypes.hsc" #-} {-# OPTIONS_HADDOCK hide #-} {-# LINE 2 "src/Network/Security/GssTypes.hsc" #-} {-# LANGUAGE CPP #-} -- | Implementation of FFI to gss_buffer_desc structure module Network.Security.GssTypes where import Foreign import Foreign.C.String {-# LINE 11 "src/Network/Security/GssTypes.hsc" #-} {-# LINE 12 "src/Network/Security/GssTypes.hsc" #-} data BufferDesc = BufferDesc Int CString instance Storable BufferDesc where sizeOf _ = (16) {-# LINE 17 "src/Network/Security/GssTypes.hsc" #-} alignment _ = alignment (undefined :: Ptr ()) poke p (BufferDesc len val) = do (\hsc_ptr -> pokeByteOff hsc_ptr 0) p len {-# LINE 20 "src/Network/Security/GssTypes.hsc" #-} (\hsc_ptr -> pokeByteOff hsc_ptr 8) p val {-# LINE 21 "src/Network/Security/GssTypes.hsc" #-} peek p = BufferDesc <$> (\hsc_ptr -> peekByteOff hsc_ptr 0) p {-# LINE 22 "src/Network/Security/GssTypes.hsc" #-} <*> (\hsc_ptr -> peekByteOff hsc_ptr 8) p {-# LINE 23 "src/Network/Security/GssTypes.hsc" #-}