{-# LINE 1 "src/Bindings/LXC/Container.hsc" #-}
module Bindings.LXC.Container (
c'LXC_CLONE_KEEPNAME,
c'LXC_CLONE_KEEPMACADDR,
c'LXC_CLONE_SNAPSHOT,
c'LXC_CLONE_KEEPBDEVTYPE,
c'LXC_CLONE_MAYBE_SNAPSHOT,
c'LXC_CLONE_MAXFLAGS,
c'LXC_CREATE_QUIET,
c'LXC_CREATE_MAXFLAGS,
C'lxc_container(..),
p'lxc_container'error_string,
p'lxc_container'error_num,
p'lxc_container'daemonize,
p'lxc_container'config_path,
C'lxc_snapshot(..),
p'lxc_snapshot'name,
p'lxc_snapshot'comment_pathname,
p'lxc_snapshot'timestamp,
p'lxc_snapshot'lxcpath,
p'lxc_snapshot'free,
C'bdev_specs(..),
p'bdev_specs'fstype,
p'bdev_specs'fssize,
p'bdev_specs'zfs,
p'bdev_specs'lvm,
p'bdev_specs'dir,
C'zfs_t(..),
p'zfs_t'zfsroot,
C'lvm_t(..),
p'lvm_t'vg,
p'lvm_t'lv,
p'lvm_t'thinpool,
p'lxc_container'is_defined,
p'lxc_container'is_running,
p'lxc_container'state,
p'lxc_container'init_pid,
p'lxc_container'get_interfaces,
p'lxc_container'get_ips,
p'lxc_container'config_file_name,
p'lxc_container'get_config_path,
p'lxc_container'set_config_path,
p'lxc_container'load_config,
p'lxc_container'save_config,
p'lxc_container'get_keys,
p'lxc_container'set_config_item,
p'lxc_container'get_config_item,
p'lxc_container'get_running_config_item,
p'lxc_container'clear_config,
p'lxc_container'clear_config_item,
p'lxc_container'start,
p'lxc_container'stop,
p'lxc_container'reboot,
p'lxc_container'shutdown,
p'lxc_container'freeze,
p'lxc_container'unfreeze,
p'lxc_container'wait,
p'lxc_container'create,
p'lxc_container'clone,
p'lxc_container'rename,
p'lxc_container'destroy,
p'lxc_container'console_getfd,
p'lxc_container'console,
p'lxc_container'attach,
p'lxc_container'attach_run_wait,
p'lxc_container'snapshot,
p'lxc_container'snapshot_list,
p'lxc_container'snapshot_restore,
p'lxc_container'snapshot_destroy,
p'lxc_container'want_daemonize,
p'lxc_container'want_close_all_fds,
p'lxc_container'get_cgroup_item,
p'lxc_container'set_cgroup_item,
p'lxc_container'may_control,
p'lxc_container'add_device_node,
p'lxc_container'remove_device_node,
c'lxc_container_new,
c'lxc_container_get,
c'lxc_container_put,
c'list_defined_containers,
c'list_active_containers,
c'list_all_containers,
c'lxc_get_wait_states,
c'lxc_get_global_config_item,
c'lxc_get_version,
c'lxc_log_close,
) where
import Foreign.Ptr (Ptr,FunPtr,plusPtr)
import Foreign.Ptr (wordPtrToPtr,castPtrToFunPtr)
import Foreign.Storable
import Foreign.C.Types
import Foreign.C.String (CString,CStringLen,CWString,CWStringLen)
import Foreign.Marshal.Alloc (alloca)
import Foreign.Marshal.Array (peekArray,pokeArray)
import Data.Int
import Data.Word
{-# LINE 124 "src/Bindings/LXC/Container.hsc" #-}
import Bindings.LXC.Sys.Types
import Bindings.LXC.AttachOptions
c'LXC_CLONE_KEEPNAME = 1
c'LXC_CLONE_KEEPNAME :: (Num a) => a
{-# LINE 128 "src/Bindings/LXC/Container.hsc" #-}
c'LXC_CLONE_KEEPMACADDR = 2
c'LXC_CLONE_KEEPMACADDR :: (Num a) => a
{-# LINE 129 "src/Bindings/LXC/Container.hsc" #-}
c'LXC_CLONE_SNAPSHOT = 4
c'LXC_CLONE_SNAPSHOT :: (Num a) => a
{-# LINE 130 "src/Bindings/LXC/Container.hsc" #-}
c'LXC_CLONE_KEEPBDEVTYPE = 8
c'LXC_CLONE_KEEPBDEVTYPE :: (Num a) => a
{-# LINE 131 "src/Bindings/LXC/Container.hsc" #-}
c'LXC_CLONE_MAYBE_SNAPSHOT = 16
c'LXC_CLONE_MAYBE_SNAPSHOT :: (Num a) => a
{-# LINE 132 "src/Bindings/LXC/Container.hsc" #-}
c'LXC_CLONE_MAXFLAGS = 32
c'LXC_CLONE_MAXFLAGS :: (Num a) => a
{-# LINE 133 "src/Bindings/LXC/Container.hsc" #-}
c'LXC_CREATE_QUIET = 1
c'LXC_CREATE_QUIET :: (Num a) => a
{-# LINE 134 "src/Bindings/LXC/Container.hsc" #-}
c'LXC_CREATE_MAXFLAGS = 2
c'LXC_CREATE_MAXFLAGS :: (Num a) => a
{-# LINE 135 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 137 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 138 "src/Bindings/LXC/Container.hsc" #-}
data C'zfs_t = C'zfs_t{
c'zfs_t'zfsroot :: CString
} deriving (Eq,Show)
p'zfs_t'zfsroot p = plusPtr p 0
p'zfs_t'zfsroot :: Ptr (C'zfs_t) -> Ptr (CString)
instance Storable C'zfs_t where
sizeOf _ = 8
alignment _ = 8
peek _p = do
v0 <- peekByteOff _p 0
return $ C'zfs_t v0
poke _p (C'zfs_t v0) = do
pokeByteOff _p 0 v0
return ()
{-# LINE 139 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 141 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 142 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 143 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 144 "src/Bindings/LXC/Container.hsc" #-}
data C'lvm_t = C'lvm_t{
c'lvm_t'vg :: CString,
c'lvm_t'lv :: CString,
c'lvm_t'thinpool :: CString
} deriving (Eq,Show)
p'lvm_t'vg p = plusPtr p 0
p'lvm_t'vg :: Ptr (C'lvm_t) -> Ptr (CString)
p'lvm_t'lv p = plusPtr p 8
p'lvm_t'lv :: Ptr (C'lvm_t) -> Ptr (CString)
p'lvm_t'thinpool p = plusPtr p 16
p'lvm_t'thinpool :: Ptr (C'lvm_t) -> Ptr (CString)
instance Storable C'lvm_t where
sizeOf _ = 24
alignment _ = 8
peek _p = do
v0 <- peekByteOff _p 0
v1 <- peekByteOff _p 8
v2 <- peekByteOff _p 16
return $ C'lvm_t v0 v1 v2
poke _p (C'lvm_t v0 v1 v2) = do
pokeByteOff _p 0 v0
pokeByteOff _p 8 v1
pokeByteOff _p 16 v2
return ()
{-# LINE 145 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 147 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 148 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 149 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 150 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 151 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 152 "src/Bindings/LXC/Container.hsc" #-}
data C'bdev_specs = C'bdev_specs{
c'bdev_specs'fstype :: CString,
c'bdev_specs'fssize :: C'uint64_t,
c'bdev_specs'zfs :: C'zfs_t,
c'bdev_specs'lvm :: C'lvm_t,
c'bdev_specs'dir :: CString
} deriving (Eq,Show)
p'bdev_specs'fstype p = plusPtr p 0
p'bdev_specs'fstype :: Ptr (C'bdev_specs) -> Ptr (CString)
p'bdev_specs'fssize p = plusPtr p 8
p'bdev_specs'fssize :: Ptr (C'bdev_specs) -> Ptr (C'uint64_t)
p'bdev_specs'zfs p = plusPtr p 16
p'bdev_specs'zfs :: Ptr (C'bdev_specs) -> Ptr (C'zfs_t)
p'bdev_specs'lvm p = plusPtr p 24
p'bdev_specs'lvm :: Ptr (C'bdev_specs) -> Ptr (C'lvm_t)
p'bdev_specs'dir p = plusPtr p 48
p'bdev_specs'dir :: Ptr (C'bdev_specs) -> Ptr (CString)
instance Storable C'bdev_specs where
sizeOf _ = 56
alignment _ = 8
peek _p = do
v0 <- peekByteOff _p 0
v1 <- peekByteOff _p 8
v2 <- peekByteOff _p 16
v3 <- peekByteOff _p 24
v4 <- peekByteOff _p 48
return $ C'bdev_specs v0 v1 v2 v3 v4
poke _p (C'bdev_specs v0 v1 v2 v3 v4) = do
pokeByteOff _p 0 v0
pokeByteOff _p 8 v1
pokeByteOff _p 16 v2
pokeByteOff _p 24 v3
pokeByteOff _p 48 v4
return ()
{-# LINE 153 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 155 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 156 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 157 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 158 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 159 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 160 "src/Bindings/LXC/Container.hsc" #-}
data C'lxc_snapshot = C'lxc_snapshot{
c'lxc_snapshot'name :: CString,
c'lxc_snapshot'comment_pathname :: CString,
c'lxc_snapshot'timestamp :: CString,
c'lxc_snapshot'lxcpath :: CString,
c'lxc_snapshot'free :: FunPtr (Ptr C'lxc_snapshot -> IO ())
} deriving (Eq,Show)
p'lxc_snapshot'name p = plusPtr p 0
p'lxc_snapshot'name :: Ptr (C'lxc_snapshot) -> Ptr (CString)
p'lxc_snapshot'comment_pathname p = plusPtr p 8
p'lxc_snapshot'comment_pathname :: Ptr (C'lxc_snapshot) -> Ptr (CString)
p'lxc_snapshot'timestamp p = plusPtr p 16
p'lxc_snapshot'timestamp :: Ptr (C'lxc_snapshot) -> Ptr (CString)
p'lxc_snapshot'lxcpath p = plusPtr p 24
p'lxc_snapshot'lxcpath :: Ptr (C'lxc_snapshot) -> Ptr (CString)
p'lxc_snapshot'free p = plusPtr p 32
p'lxc_snapshot'free :: Ptr (C'lxc_snapshot) -> Ptr (FunPtr (Ptr C'lxc_snapshot -> IO ()))
instance Storable C'lxc_snapshot where
sizeOf _ = 40
alignment _ = 8
peek _p = do
v0 <- peekByteOff _p 0
v1 <- peekByteOff _p 8
v2 <- peekByteOff _p 16
v3 <- peekByteOff _p 24
v4 <- peekByteOff _p 32
return $ C'lxc_snapshot v0 v1 v2 v3 v4
poke _p (C'lxc_snapshot v0 v1 v2 v3 v4) = do
pokeByteOff _p 0 v0
pokeByteOff _p 8 v1
pokeByteOff _p 16 v2
pokeByteOff _p 24 v3
pokeByteOff _p 32 v4
return ()
{-# LINE 161 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 163 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 164 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 165 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 166 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 167 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 168 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 169 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 170 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 171 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 172 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 173 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 174 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 175 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 176 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 177 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 178 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 179 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 180 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 181 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 182 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 183 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 184 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 185 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 186 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 187 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 188 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 189 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 190 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 191 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 192 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 193 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 194 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 195 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 196 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 197 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 198 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 199 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 200 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 201 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 202 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 203 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 204 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 205 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 206 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 207 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 208 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 209 "src/Bindings/LXC/Container.hsc" #-}
{-# LINE 210 "src/Bindings/LXC/Container.hsc" #-}
data C'lxc_container = C'lxc_container{
c'lxc_container'error_string :: CString,
c'lxc_container'error_num :: CInt,
c'lxc_container'daemonize :: CBool,
c'lxc_container'config_path :: CString,
c'lxc_container'is_defined :: FunPtr (Ptr C'lxc_container -> IO CBool),
c'lxc_container'state :: FunPtr (Ptr C'lxc_container -> IO CString),
c'lxc_container'is_running :: FunPtr (Ptr C'lxc_container -> IO CBool),
c'lxc_container'freeze :: FunPtr (Ptr C'lxc_container -> IO CBool),
c'lxc_container'unfreeze :: FunPtr (Ptr C'lxc_container -> IO CBool),
c'lxc_container'init_pid :: FunPtr (Ptr C'lxc_container -> IO C'pid_t),
c'lxc_container'load_config :: FunPtr (Ptr C'lxc_container -> CString -> IO CBool),
c'lxc_container'start :: FunPtr (Ptr C'lxc_container -> CInt -> Ptr CString -> IO CBool),
c'lxc_container'stop :: FunPtr (Ptr C'lxc_container -> IO CBool),
c'lxc_container'want_daemonize :: FunPtr (Ptr C'lxc_container -> CBool -> IO CBool),
c'lxc_container'want_close_all_fds :: FunPtr (Ptr C'lxc_container -> CBool -> IO CBool),
c'lxc_container'config_file_name :: FunPtr (Ptr C'lxc_container -> IO CString),
c'lxc_container'wait :: FunPtr (Ptr C'lxc_container -> CString -> CInt -> IO CBool),
c'lxc_container'set_config_item :: FunPtr (Ptr C'lxc_container -> CString -> CString -> IO CBool),
c'lxc_container'destroy :: FunPtr (Ptr C'lxc_container -> IO CBool),
c'lxc_container'save_config :: FunPtr (Ptr C'lxc_container -> CString -> IO CBool),
c'lxc_container'create :: FunPtr (Ptr C'lxc_container -> CString -> CString -> Ptr C'bdev_specs -> CInt -> Ptr CString -> IO CBool),
c'lxc_container'rename :: FunPtr (Ptr C'lxc_container -> CString -> IO CBool),
c'lxc_container'reboot :: FunPtr (Ptr C'lxc_container -> IO CBool),
c'lxc_container'shutdown :: FunPtr (Ptr C'lxc_container -> CInt -> IO CBool),
c'lxc_container'clear_config :: FunPtr (Ptr C'lxc_container -> IO ()),
c'lxc_container'clear_config_item :: FunPtr (Ptr C'lxc_container -> CString -> IO CBool),
c'lxc_container'get_config_item :: FunPtr (Ptr C'lxc_container -> CString -> CString -> CInt -> IO CInt),
c'lxc_container'get_running_config_item :: FunPtr (Ptr C'lxc_container -> CString -> IO CString),
c'lxc_container'get_keys :: FunPtr (Ptr C'lxc_container -> CString -> CString -> CInt -> IO CInt),
c'lxc_container'get_interfaces :: FunPtr (Ptr C'lxc_container -> IO (Ptr CString)),
c'lxc_container'get_ips :: FunPtr (Ptr C'lxc_container -> CString -> CString -> CInt -> IO (Ptr CString)),
c'lxc_container'get_cgroup_item :: FunPtr (Ptr C'lxc_container -> CString -> CString -> CInt -> IO CInt),
c'lxc_container'set_cgroup_item :: FunPtr (Ptr C'lxc_container -> CString -> CString -> IO CBool),
c'lxc_container'get_config_path :: FunPtr (Ptr C'lxc_container -> IO CString),
c'lxc_container'set_config_path :: FunPtr (Ptr C'lxc_container -> CString -> IO CBool),
c'lxc_container'clone :: FunPtr (Ptr C'lxc_container -> CString -> CString -> CInt -> CString -> CString -> C'uint64_t -> Ptr CString -> IO (Ptr C'lxc_container)),
c'lxc_container'console_getfd :: FunPtr (Ptr C'lxc_container -> Ptr CInt -> Ptr CInt -> IO CInt),
c'lxc_container'console :: FunPtr (Ptr C'lxc_container -> CInt -> CInt -> CInt -> CInt -> CInt -> IO CInt),
c'lxc_container'attach :: FunPtr (Ptr C'lxc_container -> C_lxc_attach_exec_t -> Ptr () -> Ptr C'lxc_attach_options_t -> Ptr C'pid_t -> IO CInt),
c'lxc_container'attach_run_wait :: FunPtr (Ptr C'lxc_container -> Ptr C'lxc_attach_options_t -> CString -> Ptr CString -> IO CInt),
c'lxc_container'snapshot :: FunPtr (Ptr C'lxc_container -> CString -> IO CInt),
c'lxc_container'snapshot_list :: FunPtr (Ptr C'lxc_container -> Ptr (Ptr C'lxc_snapshot) -> IO CInt),
c'lxc_container'snapshot_restore :: FunPtr (Ptr C'lxc_container -> CString -> CString -> IO CBool),
c'lxc_container'snapshot_destroy :: FunPtr (Ptr C'lxc_container -> CString -> IO CBool),
c'lxc_container'may_control :: FunPtr (Ptr C'lxc_container -> IO CBool),
c'lxc_container'add_device_node :: FunPtr (Ptr C'lxc_container -> CString -> CString -> IO CBool),
c'lxc_container'remove_device_node :: FunPtr (Ptr C'lxc_container -> CString -> CString -> IO CBool)
} deriving (Eq,Show)
p'lxc_container'error_string p = plusPtr p 56
p'lxc_container'error_string :: Ptr (C'lxc_container) -> Ptr (CString)
p'lxc_container'error_num p = plusPtr p 64
p'lxc_container'error_num :: Ptr (C'lxc_container) -> Ptr (CInt)
p'lxc_container'daemonize p = plusPtr p 68
p'lxc_container'daemonize :: Ptr (C'lxc_container) -> Ptr (CBool)
p'lxc_container'config_path p = plusPtr p 72
p'lxc_container'config_path :: Ptr (C'lxc_container) -> Ptr (CString)
p'lxc_container'is_defined p = plusPtr p 80
p'lxc_container'is_defined :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> IO CBool))
p'lxc_container'state p = plusPtr p 88
p'lxc_container'state :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> IO CString))
p'lxc_container'is_running p = plusPtr p 96
p'lxc_container'is_running :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> IO CBool))
p'lxc_container'freeze p = plusPtr p 104
p'lxc_container'freeze :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> IO CBool))
p'lxc_container'unfreeze p = plusPtr p 112
p'lxc_container'unfreeze :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> IO CBool))
p'lxc_container'init_pid p = plusPtr p 120
p'lxc_container'init_pid :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> IO C'pid_t))
p'lxc_container'load_config p = plusPtr p 128
p'lxc_container'load_config :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> IO CBool))
p'lxc_container'start p = plusPtr p 136
p'lxc_container'start :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CInt -> Ptr CString -> IO CBool))
p'lxc_container'stop p = plusPtr p 152
p'lxc_container'stop :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> IO CBool))
p'lxc_container'want_daemonize p = plusPtr p 160
p'lxc_container'want_daemonize :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CBool -> IO CBool))
p'lxc_container'want_close_all_fds p = plusPtr p 168
p'lxc_container'want_close_all_fds :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CBool -> IO CBool))
p'lxc_container'config_file_name p = plusPtr p 176
p'lxc_container'config_file_name :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> IO CString))
p'lxc_container'wait p = plusPtr p 184
p'lxc_container'wait :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> CInt -> IO CBool))
p'lxc_container'set_config_item p = plusPtr p 192
p'lxc_container'set_config_item :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> CString -> IO CBool))
p'lxc_container'destroy p = plusPtr p 200
p'lxc_container'destroy :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> IO CBool))
p'lxc_container'save_config p = plusPtr p 208
p'lxc_container'save_config :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> IO CBool))
p'lxc_container'create p = plusPtr p 216
p'lxc_container'create :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> CString -> Ptr C'bdev_specs -> CInt -> Ptr CString -> IO CBool))
p'lxc_container'rename p = plusPtr p 232
p'lxc_container'rename :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> IO CBool))
p'lxc_container'reboot p = plusPtr p 240
p'lxc_container'reboot :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> IO CBool))
p'lxc_container'shutdown p = plusPtr p 248
p'lxc_container'shutdown :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CInt -> IO CBool))
p'lxc_container'clear_config p = plusPtr p 256
p'lxc_container'clear_config :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> IO ()))
p'lxc_container'clear_config_item p = plusPtr p 264
p'lxc_container'clear_config_item :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> IO CBool))
p'lxc_container'get_config_item p = plusPtr p 272
p'lxc_container'get_config_item :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> CString -> CInt -> IO CInt))
p'lxc_container'get_running_config_item p = plusPtr p 280
p'lxc_container'get_running_config_item :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> IO CString))
p'lxc_container'get_keys p = plusPtr p 288
p'lxc_container'get_keys :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> CString -> CInt -> IO CInt))
p'lxc_container'get_interfaces p = plusPtr p 296
p'lxc_container'get_interfaces :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> IO (Ptr CString)))
p'lxc_container'get_ips p = plusPtr p 304
p'lxc_container'get_ips :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> CString -> CInt -> IO (Ptr CString)))
p'lxc_container'get_cgroup_item p = plusPtr p 312
p'lxc_container'get_cgroup_item :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> CString -> CInt -> IO CInt))
p'lxc_container'set_cgroup_item p = plusPtr p 320
p'lxc_container'set_cgroup_item :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> CString -> IO CBool))
p'lxc_container'get_config_path p = plusPtr p 328
p'lxc_container'get_config_path :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> IO CString))
p'lxc_container'set_config_path p = plusPtr p 336
p'lxc_container'set_config_path :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> IO CBool))
p'lxc_container'clone p = plusPtr p 344
p'lxc_container'clone :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> CString -> CInt -> CString -> CString -> C'uint64_t -> Ptr CString -> IO (Ptr C'lxc_container)))
p'lxc_container'console_getfd p = plusPtr p 352
p'lxc_container'console_getfd :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> Ptr CInt -> Ptr CInt -> IO CInt))
p'lxc_container'console p = plusPtr p 360
p'lxc_container'console :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CInt -> CInt -> CInt -> CInt -> CInt -> IO CInt))
p'lxc_container'attach p = plusPtr p 368
p'lxc_container'attach :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> C_lxc_attach_exec_t -> Ptr () -> Ptr C'lxc_attach_options_t -> Ptr C'pid_t -> IO CInt))
p'lxc_container'attach_run_wait p = plusPtr p 376
p'lxc_container'attach_run_wait :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> Ptr C'lxc_attach_options_t -> CString -> Ptr CString -> IO CInt))
p'lxc_container'snapshot p = plusPtr p 392
p'lxc_container'snapshot :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> IO CInt))
p'lxc_container'snapshot_list p = plusPtr p 400
p'lxc_container'snapshot_list :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> Ptr (Ptr C'lxc_snapshot) -> IO CInt))
p'lxc_container'snapshot_restore p = plusPtr p 408
p'lxc_container'snapshot_restore :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> CString -> IO CBool))
p'lxc_container'snapshot_destroy p = plusPtr p 416
p'lxc_container'snapshot_destroy :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> IO CBool))
p'lxc_container'may_control p = plusPtr p 424
p'lxc_container'may_control :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> IO CBool))
p'lxc_container'add_device_node p = plusPtr p 432
p'lxc_container'add_device_node :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> CString -> IO CBool))
p'lxc_container'remove_device_node p = plusPtr p 440
p'lxc_container'remove_device_node :: Ptr (C'lxc_container) -> Ptr (FunPtr (Ptr C'lxc_container -> CString -> CString -> IO CBool))
instance Storable C'lxc_container where
sizeOf _ = 448
alignment _ = 8
peek _p = do
v0 <- peekByteOff _p 56
v1 <- peekByteOff _p 64
v2 <- peekByteOff _p 68
v3 <- peekByteOff _p 72
v4 <- peekByteOff _p 80
v5 <- peekByteOff _p 88
v6 <- peekByteOff _p 96
v7 <- peekByteOff _p 104
v8 <- peekByteOff _p 112
v9 <- peekByteOff _p 120
v10 <- peekByteOff _p 128
v11 <- peekByteOff _p 136
v12 <- peekByteOff _p 152
v13 <- peekByteOff _p 160
v14 <- peekByteOff _p 168
v15 <- peekByteOff _p 176
v16 <- peekByteOff _p 184
v17 <- peekByteOff _p 192
v18 <- peekByteOff _p 200
v19 <- peekByteOff _p 208
v20 <- peekByteOff _p 216
v21 <- peekByteOff _p 232
v22 <- peekByteOff _p 240
v23 <- peekByteOff _p 248
v24 <- peekByteOff _p 256
v25 <- peekByteOff _p 264
v26 <- peekByteOff _p 272
v27 <- peekByteOff _p 280
v28 <- peekByteOff _p 288
v29 <- peekByteOff _p 296
v30 <- peekByteOff _p 304
v31 <- peekByteOff _p 312
v32 <- peekByteOff _p 320
v33 <- peekByteOff _p 328
v34 <- peekByteOff _p 336
v35 <- peekByteOff _p 344
v36 <- peekByteOff _p 352
v37 <- peekByteOff _p 360
v38 <- peekByteOff _p 368
v39 <- peekByteOff _p 376
v40 <- peekByteOff _p 392
v41 <- peekByteOff _p 400
v42 <- peekByteOff _p 408
v43 <- peekByteOff _p 416
v44 <- peekByteOff _p 424
v45 <- peekByteOff _p 432
v46 <- peekByteOff _p 440
return $ C'lxc_container v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46
poke _p (C'lxc_container v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46) = do
pokeByteOff _p 56 v0
pokeByteOff _p 64 v1
pokeByteOff _p 68 v2
pokeByteOff _p 72 v3
pokeByteOff _p 80 v4
pokeByteOff _p 88 v5
pokeByteOff _p 96 v6
pokeByteOff _p 104 v7
pokeByteOff _p 112 v8
pokeByteOff _p 120 v9
pokeByteOff _p 128 v10
pokeByteOff _p 136 v11
pokeByteOff _p 152 v12
pokeByteOff _p 160 v13
pokeByteOff _p 168 v14
pokeByteOff _p 176 v15
pokeByteOff _p 184 v16
pokeByteOff _p 192 v17
pokeByteOff _p 200 v18
pokeByteOff _p 208 v19
pokeByteOff _p 216 v20
pokeByteOff _p 232 v21
pokeByteOff _p 240 v22
pokeByteOff _p 248 v23
pokeByteOff _p 256 v24
pokeByteOff _p 264 v25
pokeByteOff _p 272 v26
pokeByteOff _p 280 v27
pokeByteOff _p 288 v28
pokeByteOff _p 296 v29
pokeByteOff _p 304 v30
pokeByteOff _p 312 v31
pokeByteOff _p 320 v32
pokeByteOff _p 328 v33
pokeByteOff _p 336 v34
pokeByteOff _p 344 v35
pokeByteOff _p 352 v36
pokeByteOff _p 360 v37
pokeByteOff _p 368 v38
pokeByteOff _p 376 v39
pokeByteOff _p 392 v40
pokeByteOff _p 400 v41
pokeByteOff _p 408 v42
pokeByteOff _p 416 v43
pokeByteOff _p 424 v44
pokeByteOff _p 432 v45
pokeByteOff _p 440 v46
return ()
{-# LINE 211 "src/Bindings/LXC/Container.hsc" #-}
foreign import ccall "lxc_container_new" c'lxc_container_new
:: CString -> CString -> IO (Ptr C'lxc_container)
foreign import ccall "&lxc_container_new" p'lxc_container_new
:: FunPtr (CString -> CString -> IO (Ptr C'lxc_container))
{-# LINE 213 "src/Bindings/LXC/Container.hsc" #-}
foreign import ccall "lxc_container_get" c'lxc_container_get
:: Ptr C'lxc_container -> IO CInt
foreign import ccall "&lxc_container_get" p'lxc_container_get
:: FunPtr (Ptr C'lxc_container -> IO CInt)
{-# LINE 214 "src/Bindings/LXC/Container.hsc" #-}
foreign import ccall "lxc_container_put" c'lxc_container_put
:: Ptr C'lxc_container -> IO CInt
foreign import ccall "&lxc_container_put" p'lxc_container_put
:: FunPtr (Ptr C'lxc_container -> IO CInt)
{-# LINE 215 "src/Bindings/LXC/Container.hsc" #-}
foreign import ccall "lxc_get_wait_states" c'lxc_get_wait_states
:: Ptr CString -> IO CInt
foreign import ccall "&lxc_get_wait_states" p'lxc_get_wait_states
:: FunPtr (Ptr CString -> IO CInt)
{-# LINE 216 "src/Bindings/LXC/Container.hsc" #-}
foreign import ccall "lxc_get_global_config_item" c'lxc_get_global_config_item
:: CString -> IO CString
foreign import ccall "&lxc_get_global_config_item" p'lxc_get_global_config_item
:: FunPtr (CString -> IO CString)
{-# LINE 217 "src/Bindings/LXC/Container.hsc" #-}
foreign import ccall "lxc_get_version" c'lxc_get_version
:: IO CString
foreign import ccall "&lxc_get_version" p'lxc_get_version
:: FunPtr (IO CString)
{-# LINE 218 "src/Bindings/LXC/Container.hsc" #-}
foreign import ccall "list_defined_containers" c'list_defined_containers
:: CString -> Ptr (Ptr CString) -> Ptr (Ptr (Ptr C'lxc_container)) -> IO CInt
foreign import ccall "&list_defined_containers" p'list_defined_containers
:: FunPtr (CString -> Ptr (Ptr CString) -> Ptr (Ptr (Ptr C'lxc_container)) -> IO CInt)
{-# LINE 219 "src/Bindings/LXC/Container.hsc" #-}
foreign import ccall "list_active_containers" c'list_active_containers
:: CString -> Ptr (Ptr CString) -> Ptr (Ptr (Ptr C'lxc_container)) -> IO CInt
foreign import ccall "&list_active_containers" p'list_active_containers
:: FunPtr (CString -> Ptr (Ptr CString) -> Ptr (Ptr (Ptr C'lxc_container)) -> IO CInt)
{-# LINE 220 "src/Bindings/LXC/Container.hsc" #-}
foreign import ccall "list_all_containers" c'list_all_containers
:: CString -> Ptr (Ptr CString) -> Ptr (Ptr (Ptr C'lxc_container)) -> IO CInt
foreign import ccall "&list_all_containers" p'list_all_containers
:: FunPtr (CString -> Ptr (Ptr CString) -> Ptr (Ptr (Ptr C'lxc_container)) -> IO CInt)
{-# LINE 221 "src/Bindings/LXC/Container.hsc" #-}
foreign import ccall "lxc_log_close" c'lxc_log_close
:: IO ()
foreign import ccall "&lxc_log_close" p'lxc_log_close
:: FunPtr (IO ())
{-# LINE 222 "src/Bindings/LXC/Container.hsc" #-}