on master help sign in
specifying Supported explicitly.
e80fd0cKazu Yamamoto
warp-tls/Network/Wai/Handler/WarpTLS.hs+25−10
@@ -242,16 +242,31 @@ runTLSSocket' tlsset@TLSSettings{..} set credential sock app =
242 TLS.serverWantClientCert = tlsWantClientCert
242 TLS.serverWantClientCert = tlsWantClientCert
243 , TLS.serverCACertificates = []
243 , TLS.serverCACertificates = []
244 , TLS.serverDHEParams = Nothing
244 , TLS.serverDHEParams = Nothing
245− , TLS.serverHooks = tlsServerHooks {
245+ , TLS.serverHooks = hooks
246+ , TLS.serverShared = shared
247+ , TLS.serverSupported = supported
248+ }
249+ -- Adding alpn to user's tlsServerHooks.
250+ hooks = tlsServerHooks {
246− TLS.onALPNClientSuggest = Just alpn
251+ TLS.onALPNClientSuggest = Just alpn
247− }
252+ }
248− , TLS.serverShared = def {
253+ shared = def {
249− TLS.sharedCredentials = TLS.Credentials [credential]
254+ TLS.sharedCredentials = TLS.Credentials [credential]
250− }
255+ }
251− , TLS.serverSupported = def {
256+ supported = TLS.Supported {
252− TLS.supportedVersions = tlsAllowedVersions
257+ TLS.supportedVersions = tlsAllowedVersions
253− , TLS.supportedCiphers = tlsCiphers
258+ , TLS.supportedCiphers = tlsCiphers
254− }
259+ , TLS.supportedCompressions = [TLS.nullCompression]
260+ , TLS.supportedHashSignatures = [
261+ (TLS.HashSHA512, TLS.SignatureRSA)
262+ , (TLS.HashSHA384, TLS.SignatureRSA)
263+ , (TLS.HashSHA256, TLS.SignatureRSA)
264+ , (TLS.HashSHA224, TLS.SignatureRSA)
265+ , (TLS.HashSHA1, TLS.SignatureRSA)
266+ , (TLS.HashSHA1, TLS.SignatureDSS)
267+ ]
268+ , TLS.supportedSecureRenegotiation = True
269+ , TLS.supportedSession = True
255 }
270 }
256
271
257alpn :: [S.ByteString] -> IO S.ByteString
272alpn :: [S.ByteString] -> IO S.ByteString