Commit graph

46 commits

Author SHA1 Message Date
Vincent Hanquez
439ea6ba85 use the backend class completely and mark contextNewOnX symbols as deprecated 2014-01-17 06:55:33 +00:00
Vincent Hanquez
eb90d5be00 define failOnEitherError 2014-01-16 10:48:47 +00:00
Vincent Hanquez
50797bae50 cleanup import 2014-01-10 08:30:30 +00:00
Vincent Hanquez
453fab50ed split Backend and introduce a new HasBackend class
the HasBackend class allow to not have multiples contextNewOnX calls,
but instead will favor only one contextNew that can take all HasBackend types.
2014-01-10 07:01:34 +00:00
Vincent Hanquez
614b5b4c6b split parameters from context 2014-01-05 11:14:17 +00:00
Vincent Hanquez
8a05317d40 slightly better error when no ciphers are available 2014-01-02 06:09:09 +00:00
Vincent Hanquez
323fb95fbe consistent style in record structure. 2013-12-28 15:26:33 +00:00
Vincent Hanquez
85f436afe6 add a system to filter cipher that we can't use because we don't have the right credentials loaded. 2013-12-28 15:25:13 +00:00
Vincent Hanquez
acf9708199 use the new credentials system to be able to handle RSA and DSS certificate at the same time. 2013-12-28 15:24:20 +00:00
Vincent Hanquez
f72293d32f properly do DSS/RSA in DHE methods. 2013-12-28 15:19:39 +00:00
Vincent Hanquez
08997c96f0 default the version if not set which allow to report very early error (e.g. no cipher in common) properly 2013-12-28 15:09:25 +00:00
Vincent Hanquez
02dd7b8aa7 add support for DHE (only with RSA signing so far) 2013-12-11 16:39:25 +08:00
Vincent Hanquez
798a4b5787 move logging and hooks into a Hooks module 2013-12-11 15:55:24 +08:00
Vincent Hanquez
c805734abd use the new Crypto.Random instead of the compat Crypto.Random.API 2013-12-11 15:53:11 +08:00
Vincent Hanquez
96ae52e4cd make clear what we're talking about in the header. 2013-12-11 15:50:35 +08:00
Vincent Hanquez
0870189689 add a contextNewWithSocket 2013-10-11 08:01:38 +01:00
Vincent Hanquez
77abffceb3 add some reading and rw locks. 2013-09-01 07:36:08 +01:00
Vincent Hanquez
5836669878 remove unnecessary MonadIO parametrization 2013-08-01 07:52:42 +00:00
Vincent Hanquez
bd0ad2169e move handshake state out of state 2013-08-01 07:47:40 +00:00
Vincent Hanquez
7994f4ba27 move tx state into a mvar in the context. 2013-08-01 08:05:03 +01:00
Vincent Hanquez
49ff6e933c remove Rx state from general state.
move RxState as a mutable mvar in the context directly.
2013-07-30 08:58:58 +01:00
Vincent Hanquez
5ca744a8bf move to a proper role type for client|server 2013-07-21 10:16:01 +01:00
Vincent Hanquez
fc693ee99f add accessor from context and state to HandshakeM 2013-07-19 07:47:33 +01:00
Vincent Hanquez
4e86ffee28 split record state from state. 2013-07-13 08:03:25 +01:00
Vincent Hanquez
5d69715a50 correct mismerge 2013-07-11 10:27:24 +01:00
Vincent Hanquez
df524de618 add some locks. unused for now 2013-07-11 09:06:10 +01:00
Vincent Hanquez
c132b4cb8b first stab at separating record state from other state. 2013-07-11 09:03:33 +01:00
Vincent Hanquez
e6d2a1d7f1 re-indent 2013-07-10 07:13:10 +01:00
Vincent Hanquez
b21d4af85c add hook for received handshake message 2013-07-09 09:13:17 +01:00
Vincent Hanquez
0b170e624d proper separation of NPN callback in server and client params.
need further cleanup for client/server role separation instead of
the getClientParams and getServerParams.

fix #34.
2013-06-03 08:37:56 +01:00
Vincent Hanquez
3288ed97b4 add a better description for onCipherChoosing. 2013-06-03 08:36:54 +01:00
Vincent Hanquez
86df11a16a Merge https://github.com/knrafto/hs-tls into x509
Conflicts:
	core/Network/TLS/Context.hs
2013-06-03 08:12:10 +01:00
Kyle Raftogianis
347ebdaaf1 Rename nullSessionManager to noSessionManager 2013-06-01 23:52:38 -07:00
Vincent Hanquez
8468556fe8 use x509 public key and private key instead of defining our own in tls. 2013-05-30 07:21:25 +01:00
Vincent Hanquez
02b2f01515 move certificate stuff in x509 module. 2013-05-26 08:02:06 +01:00
Vincent Hanquez
fc9c6a407d update for x509 2013-05-19 08:05:46 +01:00
Kyle Raftogianis
2c9fa01197 Replace existential session manager with concrete data type 2013-05-14 22:42:09 -07:00
Vincent Hanquez
6f5804bb2d typo 2012-12-31 14:43:15 +00:00
Vincent Hanquez
a14b37d528 use new crypto-pubkey 2012-12-30 15:31:13 +00:00
Vincent Hanquez
cedd5b2c86 switch to CPRG instead of CryptoRandomGen 2012-12-05 07:48:11 +00:00
Vincent Hanquez
1e690cf8fb add a SSLv2 compat flag to enable reception of compat Client Hello only
for the first packet received in a server context.

The client side never try to use the compat code.
2012-12-04 08:31:22 +00:00
Vincent Hanquez
60f7197b0a export everything required. 2012-10-21 18:32:07 +01:00
Vincent Hanquez
8b665c05fd define new fields in the client structure for max fragment length and server name 2012-10-20 09:00:30 +01:00
Vincent Hanquez
7d55744060 remove useless symbols. fixes warnings. 2012-10-16 08:02:44 +01:00
Vincent Hanquez
89df5a893f fix use of catch to make sure it's usuable on ghc-7.6 and older versions. 2012-09-23 22:54:43 +01:00
Vincent Hanquez
957a005664 move all tls into a core directory. 2012-09-05 06:27:06 +01:00
Renamed from Network/TLS/Context.hs (Browse further)