aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/tls/tls_server.cpp
Commit message (Collapse)AuthorAgeFilesLines
* TLS improvementsJack Lloyd2015-10-251-20/+38
| | | | | | | | | | | | | | Use constant time operations when checking CBC padding in TLS decryption Fix a bug in decoding ClientHellos that prevented DTLS rehandshakes from working: on decode the session id and hello cookie would be swapped, causing confusion between client and server. Various changes in the service of finding the above DTLS bug that should have been done before now anyway - better control of handshake timeouts (via TLS::Policy), better reporting of handshake state in the case of an error, and finally expose the facility for per-message application callbacks.
* Avoid a crash in the TLS server if the client sends ALPN but no nextJack Lloyd2015-08-281-1/+1
| | | | protocol handler was specified to the Server constructor. GH #252
* Add ALPN (RFC 7301) and remove NPNlloyd2015-03-201-43/+17
|
* Add typedefs for function signatures/types used in TLS for easier readinglloyd2015-01-271-6/+8
|
* Remove SSLv3 and handling of SSLv2 client hellos.lloyd2015-01-111-6/+3
|
* Ensure all files have copyright and license info.lloyd2015-01-101-1/+1
| | | | | Update license header line to specify the terms and refer to the file, neither of which it included before.
* Add DTLS-SRTP key establishment from RFC 5764 (required for WebRTC).lloyd2015-01-041-48/+23
| | | | | | | | | | | | | | Github issue 27. Refactor server hello handling to make it easier to handle other extensions. The manual specified that 224 bit NIST primes were disabled by default for TLS but they were not. Additionaly disable the 256k1 curve and reorder the remaining curves by size. Rewrite the max fragment length extension code to roughly what an ideal compiler would have turned the original code into, using a switch instead of a lookup into a small constant std::map.
* A TLS Server can now process either TLS or DTLS but not either,lloyd2014-11-151-1/+2
| | | | | with the setting set in the constructor. This prevents various surprising things from happening to applications and simplifies record processing.
* Let TLS policy disable putting the timestamp in the hello random fieldslloyd2014-11-041-1/+1
|
* Add TLS fallback signalling (draft-ietf-tls-downgrade-scsv-00)lloyd2014-10-311-4/+14
|
* Specify version number in message when we reject due to policylloyd2014-10-061-1/+2
|
* Guess I won't be needing theselloyd2014-01-181-1/+0
|
* Move lib into srclloyd2014-01-101-0/+725