aboutsummaryrefslogtreecommitdiffstats
path: root/src/tls/tls_session_key.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Make the handshake Ciphersuite only available by const reference.lloyd2012-08-061-4/+4
| | | | Derive it when the server hello is set.
* Have all the TLS handshake messages stored in unique_ptrs with onlylloyd2012-08-061-5/+5
| | | | const access after setting them. Fix some const issues.
* Fairly huge update that replaces the old secmem types with std::vectorlloyd2012-05-181-3/+3
| | | | | | using a custom allocator. Currently our allocator just does new/delete with a memset before deletion, and the mmap and mlock allocators have been removed.
* propagate from branch 'net.randombit.botan.tls-state-machine' (head ↵lloyd2012-03-301-2/+2
|\ | | | | | | | | | | 63b88a65b699c95ef839bc18336bceccfbfabd2e) to branch 'net.randombit.botan.cxx11' (head 1adcc46808b403b8f6bf1669f022e65f9c30e8ea)
| * Add an abstraction for reading handshake messages (as DTLS handles itlloyd2012-03-051-2/+2
| | | | | | | | | | | | | | | | quite differently). Avoid using a queue for reading certificates. Hide the version code in the handshake state with a getter and setter.
* | Merge fixups. Add locking to default session manager. Use chrono liblloyd2012-02-201-1/+1
|/ | | | and unique_ptr.
* Support alternate PRF hashes in TLS 1.2. Add support for the SHA-384lloyd2012-01-281-19/+1
| | | | ciphersuites.
* Make the version number a proper class, makes many things much easierlloyd2012-01-231-6/+6
| | | | for such a minor change.
* Since this branch is hugely API breaking already, go ahead and putlloyd2012-01-231-1/+5
| | | | | everything into a new namespace (Botan::TLS), removing the TLS_ prefixes on everything.
* Kinda maybe working TLS 1.2 for clients. Not well tested at all, but alloyd2012-01-191-0/+2
| | | | | | | | basic connection with a GnuTLS server does work. Currently we don't respect the signature_algorithms extension at all, and using SHA-256 with a 12-byte finished value is hardcoded though the spec is that it can depend on the ciphersuite (likely relevant for GOST ciphersuites in particular).
* I'm not sure if I like this asthetically, but passing around thelloyd2012-01-191-19/+18
| | | | | | | | | | | | | | | | | | entire handshake state in many cases makes things simpler to update, in that each message type already knows what it needs depending on the version, params, etc, and this way a) that knowledge doesn't need to percolate up the the actual client and server handshake code and b) each message type can be updated for new formats/version without having to change its callers. Downside is it hides the dependency information away, and makes it non-obvious what needs to be created beforehand for each message to work correctly. However this is (almost) entirely predicated on the handshake message flows, and these we control with the next expected message scheme, so this should be fairly safe to do. This checkin only updates the ones where it was immediately relevant but for consistency probably all of them should be updated in the same way.
* Add a function for getting the version number of an active connection.lloyd2011-12-301-1/+1
| | | | | | | | Add a new callback that is called with the session info when a handshake completes. Currently only called on the server side as the client doesn't have session resumption yet. Rename CipherSuite to TLS_Cipher_Suite.
* Make tls_session_key.h an internal headerlloyd2011-12-271-1/+1
|
* Half of session serializationlloyd2011-12-271-2/+0
|
* Clean up SessionKeys implementationlloyd2011-12-271-100/+48
|
* First rev of working session resumption (server side only). Only workslloyd2011-12-271-17/+58
| | | | with TLS at the moment, SessionKeys is a mess.
* Initial hooks for session resumptionlloyd2011-12-231-57/+2
|
* Rename ssl module to tlslloyd2011-12-231-0/+170