Safe Haskell | None |
---|---|
Language | Haskell98 |
- data PrivDataField
- data PrivDataSource
- class IsPrivDataSource s where
- privDataField :: s -> PrivDataField
- describePrivDataSource :: s -> Maybe String
- newtype Context = Context String
- newtype HostContext = HostContext {
- mkHostContext :: HostName -> Context
- class IsContext c where
- asContext :: HostName -> c -> Context
- asHostContext :: c -> HostContext
- anyContext :: Context
- hostContext :: HostContext
- type PrivData = String
- data SshKeyType
- = SshRsa
- | SshDsa
- | SshEcdsa
- | SshEd25519
- sshKeyTypeParam :: SshKeyType -> String
Documentation
data PrivDataField Source
Note that removing or changing field names will break the serialized privdata files, so don't do that! It's fine to add new fields.
data PrivDataSource Source
Combines a PrivDataField with a description of how to generate its value.
class IsPrivDataSource s where Source
privDataField :: s -> PrivDataField Source
describePrivDataSource :: s -> Maybe String Source
A context in which a PrivDataField is used.
Often this will be a domain name. For example, Context "www.example.com" could be used for the SSL cert for the web server serving that domain. Multiple hosts might use that privdata.
This appears in serlialized privdata files.
newtype HostContext Source
A context that varies depending on the HostName where it's used.
class IsContext c where Source
Class of things that can be used as a Context.
asContext :: HostName -> c -> Context Source
asHostContext :: c -> HostContext Source
Use when a PrivDataField is not dependent on any paricular context.
hostContext :: HostContext Source
Makes a HostContext that consists just of the hostname.
data SshKeyType Source
sshKeyTypeParam :: SshKeyType -> String Source
Parameter that would be passed to ssh-keygen to generate key of this type