lio-0.0.2: Labeled IO Information Flow Control Library




This module provides bindings for the DCLabel module, with some renaming to resolve name clashes. The delegation of privilege and other trusted code is not exported by this module and code wishing to use this should import DCLabel.TCB.


DCLabel export

type DCCatSet = LabelSource

A DCLabel category set.

Renamed privileges

type DCPriv = PrivSource

A DCLabel (untrusted) privilege.

type DCPrivTCB = TCBPrivSource

A DCLabel privilege.

Useful aliases for the LIO Monad

type DCLabeled a = Labeled DCLabel aSource

The type for Labeled values uinsg DCLabel as the label.

type DC = LIO DCLabel ()Source

The monad for LIO computations using DCLabel as the label.

evalDC :: DC a -> IO (a, DCLabel)Source

Runs a computation in the LIO Monad, returning both the computation's result and the label of the result.