mac-0.1.3.0: Static Mandatory Access Control in Haskell

Safe HaskellTrustworthy
LanguageHaskell98

MAC.Control

Description

Provide primitives to communicate among family members. It provides an API for sequential joinMAC and concurrent (forkMAC) setting

Synopsis

Documentation

joinMAC :: Less l l' => MAC l' a -> MAC l (Labeled l' a) Source #

Primitive which allows family members to safely communicate. The function finishes even if an exception is raised---the exception is rethrown when the returned value gets inspected. This function must not be used in a concurrent setting.

forkMAC :: Less l l' => MAC l' () -> MAC l () Source #

Safely spawning new threads

forkMACMVar :: (Less l' l', Less l l') => MAC l' a -> MAC l (MACMVar l' a) Source #

Safely spawning new threads. The function returns a labeled MVar where the outcome of the thread is stored