hans-3.0.2: src/Hans/Device.hs
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE CPP #-}
module Hans.Device (
module Exports,
closeDevice,
startDevice
) where
#if defined(HANS_TARGET_UNIX)
import Hans.Device.Tap as Exports (listDevices,openDevice)
#elif defined(HANS_TARGET_XEN)
import Hans.Device.Xen as Exports (listDevices,openDevice)
#endif
import Hans.Device.Types as Exports
-- | Stop packets flowing, and cleanup any resources associated with this
-- device.
closeDevice :: Device -> IO ()
closeDevice Device { .. } =
do devStop
devCleanup
-- | Start processing packets through this device.
startDevice :: Device -> IO ()
startDevice Device { .. } = devStart