67 Commits

Author SHA1 Message Date
Hans Svensson
14fe5c7e8e Implement enoise_connection:controlling_process/2 2018-03-08 11:19:46 +01:00
Hans Svensson
866b4421b3 Add tests at gen_tcp-level
Move data structure tests to enoise_hs_state_tests
2018-03-07 14:29:37 +01:00
Hans Svensson
955e5c2f32 Handle recv(NoiseSock, 0) correctly
This is a bit subtle since the underlying data is inherently chunked into Noise messages. Need to keep the right data around.
2018-03-07 14:28:56 +01:00
Hans Svensson
02fcf8a86c Don’t do arithmetics with infinity (the atom) 2018-03-07 14:27:46 +01:00
Hans Svensson
4ebb8c8ec9 Make termination reason normal for tcp_closed
To avoid lots of error reports, this is a normal case after all…
2018-03-07 14:27:19 +01:00
Hans Svensson
9f2faa3caf Add enoise_protocol:supported()
It returns a map describing what is supported…
2018-03-07 14:26:23 +01:00
Hans Svensson
4791d15f2e Fix typo bug 2018-03-07 11:23:21 +01:00
Hans Svensson
d81f1eb32e Introduce enoise_connection
This will put the control into a (gen_server) process that wraps the functionality in much the same way as ssl does for gen_tcp, etc.

Some features are still missing (like setopts)
2018-03-06 16:19:25 +01:00
Hans Svensson
0d38f56d6a Add more patterns kk, nx, xn, in, ik, xx, and ix 2018-03-06 10:35:40 +01:00
Hans Svensson
b1d63ad3b9 Refactored + added some test vector support 2018-03-06 10:06:03 +01:00
Hans Svensson
bc8ebc7ec6 Refactor handshake flow control 2018-03-02 15:42:43 +01:00
Hans Svensson
4414c0d7a2 More tests 2018-03-02 14:25:18 +01:00
Hans Svensson
4d2af24250 All crypto and top level in place
Limited support for protocols, virtually no error handling
2018-03-02 14:24:59 +01:00
Hans Svensson
d0723eb247 Symmetric state layer 2018-03-01 21:49:22 +01:00
Hans Svensson
0d563884eb Some tests for cipher_state 2018-03-01 20:37:57 +01:00
Hans Svensson
d78c774b55 The innermost layer cipher_state 2018-03-01 11:44:23 +01:00
Hans Svensson
cb626ab07c Initial project setup 2018-03-01 11:42:59 +01:00