Commit 98c295d69c2717e9ab0cb503739eeba992c72d82

  • avatar
  • Peter Simons (Committer)
  • Wed Feb 20 22:32:25 CET 2008
  • avatar
  • Peter Simons <simons @cr…p.tyo> (Author)
  • Wed Feb 20 22:32:25 CET 2008
Updated for latest hsemail module.
  
1{-# LANGUAGE GeneralizedNewtypeDeriving, DeriveDataTypeable #-}
12{- |
23 Module : Postmaster.FSM.SessionState
34 Copyright : (c) 2004-2008 by Peter Simons
1313
1414import Postmaster.Base
1515import Text.ParserCombinators.Parsec.Rfc2821
16import Data.Typeable
1617
18newtype SmtpSessionState = SSST SessionState
19 deriving (Typeable)
20
1721-- |Local Variable: @SESSIONSTATE :: 'SessionState'@
1822
1923sessionState :: SmtpdVariable
2024sessionState = defineLocal "sessionstate"
2125
2226setSessionState :: SessionState -> Smtpd ()
23setSessionState sst = sessionState (`setVar` sst)
27setSessionState sst = sessionState (`setVar` (SSST sst))
2428
2529getSessionState :: Smtpd SessionState
26getSessionState = sessionState (`getVarDef` Unknown)
30getSessionState = sessionState (`getVarDef` (SSST Unknown)) >>= \(SSST sst) -> return sst