aboutsummaryrefslogtreecommitdiff
path: root/libcmix-network/client.cpp
AgeCommit message (Collapse)Author
2016-10-21Adds SSL connections between nodes.Dennis Brentjes
2016-10-13Added a stop condition for the client,Dennis Brentjes
When all the nodes have send a bye to the client, the client will shut down.
2016-10-12Major network rewrite.Dennis Brentjes
One generic class has been introduced to handle all connection types. Typedefs provide Sender Receiver and SenderReceiver types, which limit the functionality of the types. As to not accidentally communicate with the wrong node about things.
2016-10-11Commit introducing Client keyexchange, triggering bugs.Dennis Brentjes
Clients now send their public key to each node and the node calculates the shared secret. The node does not yet respond with it's public key. To keep this commit smaller. Nodes now disconnect from each other in a better way. Getting the relevant crypto api is now done with a generic function. What crypto algorithm and implemenation is beign used can be selected in the cmake cache (use cmake-gui or ccmake) Clients now connect correctly to multiple nodes.
2016-10-05Seperates Nodes and Clients for incoming connections.Dennis Brentjes
Created a PrevNode class to reflect the seperation. Made Client movable. Added 2 empty protobuf message that declare what each connecting client is, sent when connected to a node.
2016-10-04Fixes a bug in the network which send the wrong message length.Dennis Brentjes
2016-10-01Removes all tracing log calls.Dennis Brentjes
2016-09-29This changset triggered a storm of changes.Dennis Brentjes
Added the behaviour for receiving a public_share message from our previous node when not being the first node ourselves. This triggered the whitespace bug below, which sparked the network rewrite. Rewrote network protocol to first send the size of the message it's sending in a 32bit integer in network byte order. Fixed a bug where whitespace in the received buffer would be skipped. leading to broken protobuf messages. NextNode no longers inherits from client but owns one, and some functions needed to be forwarded.
2016-09-28Made changes so we can have a 1 Node cmix network.Dennis Brentjes
2016-09-22Explicitely default initialize done handler, checks done before executing.Dennis Brentjes
2016-08-31Split up the client and server parts in a separate network libraryDennis Brentjes