packages feed

peyotls 0.0.0.16 → 0.0.0.17

raw patch · 2 files changed

+17/−4 lines, 2 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

peyotls.cabal view
@@ -2,7 +2,7 @@ cabal-version:	>= 1.8  name:		peyotls-version:	0.0.0.16+version:	0.0.0.17 stability:	Experimental author:		Yoshikuni Jujo <PAF01143@nifty.ne.jp> maintainer:	Yoshikuni Jujo <PAF01143@nifty.ne.jp>@@ -281,7 +281,7 @@ source-repository	this     type:	git     location:	git://github.com/YoshikuniJujo/peyotls.git-    tag:	peyotls-0.0.0.16+    tag:	peyotls-0.0.0.17  library     hs-source-dirs:	src
src/Network/PeyoTLS/Server.hs view
@@ -177,15 +177,28 @@ 		Just cs -> cs; _ -> CipherSuite RSA AES_128_CBC_SHA fromClientHello _ _ = error "Server.fromClientHello: bad" +getRenegoInfo :: [Extension] -> Maybe BS.ByteString+getRenegoInfo [] = Nothing+getRenegoInfo (ERenegoInfo rn : _) = Just rn+getRenegoInfo (_ : es) = getRenegoInfo es+ clientHello :: (HandleLike h, CPRG g) => 	[CipherSuite] -> HandshakeM h g (CipherSuite, BS.ByteString, Version, Bool) clientHello cssv = do-	ch@(ClientHello cv cr _sid cscl cms _e) <- readHandshake+	cf0 <- getClientFinished+	ch@(ClientHello cv cr _sid cscl cms me) <- readHandshake+--	let Just cf = getRenegoInfo me+--	let rn = True+	let (cf, rn) = case me of+		Nothing -> ("", False)+		Just e -> case getRenegoInfo e of+			Nothing -> ("", False)+			Just c -> (c, True) 	debug "medium" ch --	debug "medium" e --	let rn = maybe False (ERenegoInfo "" `elem`) e-	let rn = True --	debug "medium" rn+	unless (cf == cf0) $ E.throwError "clientHello" 	chk cv cscl cms >> return (merge cssv cscl, cr, cv, rn) 	where 	merge sv cl = case find (`elem` cl) sv of