[Haskell-cafe] TLS 0.9.6, question about session resumption.
.
ch.gosch at googlemail.com
Mon Jul 23 19:22:56 CEST 2012
Thank you Vincent and Dominique,
I saw the session callbacks before, and guessed that I needed to store
the SessionData for all SessionIDs and return them on resumption
(correct me if that's wrong).
However, I could not find a module that exports these two data types, so
I figured maybe that's work in progress or something I am not meant to
fumble with ... or maybe I was just too blind to see where I get the
data types from. Can you help me out?
Maybe it helps if I post the configuration that I used:
initServerState :: IO ServerState
initServerState = do
gen <- newGenIO :: IO SystemRandom
cert <- fileReadCertificate "cacert.pem"
pk <- fileReadPrivateKey "privatekey2.pem"
-- sessionMap <- newTMVar M.empty
let params = defaultParams {
pConnectVersion = TLS10
, pCiphers = ciphersuite_all
, pLogging = TLSLogging { loggingPacketSent = noLog
, loggingPacketRecv = noLog
, loggingIOSent = \_ -> return ()
, loggingIORecv = \_ _ -> return () }
, onHandshake = handshakeCallback
, pUseSession = False -- FIXME: This should be True for session
resumption, but session resumption fails so far ...
-- The next two functions need SessionID and
SessionData as arguments, but these are not exported by any module.
-- , onSessionEstablished = \_ _ -> sessionEst sessionMap
-- , onSessionResumption = \_ -> sessionRes sessionMap
, onCertificatesRecv = certRecv
, pCertificates = [(cert, Just pk)] }
s <- listenOn (PortNumber 3000)
-- ... and some more stuff down here having nothing to do with the
-- networking...
The client is a small Java program that just sends some data via a ssl
connection. It works with the pUseSession = False setting as above, and
it also works with an "openssl s_server".
Cheers,
Christian
On Mon, 2012-07-23 at 15:33 +0100, Vincent Hanquez wrote:
> On 07/21/2012 05:12 PM, C Gosch wrote:
> > Hi Cafe,
> >
> > and then the server says
> > (AlertLevel_Fatal,UnexpectedMessage)
> >
> > I'm not sure whether the "ServerHelloDone" should happen when resuming.
> > Does anyone have a hint what may be going wrong?
> > I am using TLS10 and the tls package with version 0.9.6.
> Hi Christian,
>
> Domique is right, a sucessful session resumption should have a Finished message
> after ServerHello.
>
> It's not really clear what's your setup (are you trying to use TLS on
> server/client/both ?), and without some code, it's hard to debug your problem.
> The only thing that come to my mind is, did you setup your session callbacks
> correctly ?
>
More information about the Haskell-Cafe
mailing list