packages feed

hsXenCtrl 0.0.7 → 0.1.0

raw patch · 3 files changed

+47/−3 lines, 3 filesdep ~arraydep ~basedep ~bytestring

Dependency ranges changed: array, base, bytestring, dlist, mtl

Files

System/Xen.hs view
@@ -39,6 +39,8 @@ 	, xcEvtChanUnbind 	, xcEvtChanPending 	, xcEvtChanUnmask+	, xcVersion+	, getXenVersion 	-- Types 	, System.Xen.CBindings.DomId(..) 	, DumpcoreCallback@@ -392,3 +394,17 @@ 	lxf "xcEvtChanUnmask" 	r <- liftIO $ xc_evtchn_unmask hdl port 	errnoOnNegOne r ()++xcVersion :: XCHandle -> XenVersion -> Xen String+xcVersion hdl ver = do+	lxf "xcVersion"+	r <- liftIO $ xc_version hdl ver nullPtr+	errnoOnNegOne r "Error"+	return (show r)++getXenVersion :: Xen String+getXenVersion = do+	h <- xcInterfaceOpen+	r <- liftIO $ xc_version h xENVER_version nullPtr+	xcInterfaceClose h+	return (show r)
System/Xen/CBindings.hsc view
@@ -130,6 +130,16 @@     , MemoryProtectionFlags     , MMUExtOp(..)     , XenDomainHandleT+    , XenVersion+    , xENVER_extraversion+    , xENVER_compile_info+    , xENVER_capabilities+    , xENVER_changeset+    , xENVER_platform_parameters+    , xENVER_get_features+    , xENVER_pagesize+    , xENVER_guest_handle+    , xENVER_version     ) where  import Data.Bits@@ -651,7 +661,7 @@     xc_sysctl :: XCHandle -> Ptr XenSysCtl -> IO CInt  foreign import ccall unsafe "xenctrl.h xc_version"-    xc_version :: XCHandle -> CInt -> Ptr () -> IO CInt+    xc_version :: XCHandle -> XenVersion -> Ptr () -> IO CInt  foreign import ccall unsafe "xenctrl.h xc_acm_op"     xc_acm_op :: XCHandle -> CInt -> Ptr () -> CULong -> IO CInt@@ -773,3 +783,21 @@         (#poke xc_core_header_t, xch_ctxt_offset) ptr c         (#poke xc_core_header_t, xch_index_offset) ptr i         (#poke xc_core_header_t, xch_pages_offset) ptr g++newtype XenVersion = XV CInt deriving (Eq, Ord, Show, Enum)++instance Storable XenVersion where+    sizeOf _ = sizeOf (undefined :: CInt)+    alignment _ = alignment (undefined :: CInt)+    peek ptr = peek (castPtr ptr :: Ptr CInt) >>= return . toEnum . fromIntegral+    poke ptr a = poke (castPtr ptr) (fromIntegral (fromEnum a) :: CInt)++xENVER_version = XV 0+xENVER_extraversion = XV 1+xENVER_compile_info = XV 2+xENVER_capabilities = XV 3+xENVER_changeset = XV 4+xENVER_platform_parameters = XV 5+xENVER_get_features = XV 6+xENVER_pagesize = XV 7+xENVER_guest_handle = XV 8
hsXenCtrl.cabal view
@@ -1,5 +1,5 @@ name:                hsXenCtrl-version:             0.0.7+version:             0.1.0 synopsis:            FFI bindings to the Xen Control library. description:         FFI bindings to xenctrl.h and perhaps more.                      The System.Xen.CBindings should provide direct access@@ -17,7 +17,7 @@ maintainer:          thomas.dubuisson@gmail.com homepage:            http://haskell.org/haskellwiki/HsXenCtrl stability:           experimental-build-Depends:       base, bytestring, mtl, array, dlist+build-Depends:       base >= 3.0 && < 4.5 , bytestring < 1.0 , mtl < 1.2 && >= 1.0, dlist == 0.5, array >= 0.2 && < 0.4 build-type:          Simple ghc-options:          exposed-modules:     System.Xen.CBindings, System.Xen