diff options
author | Othmar Gsenger <otti@anytun.org> | 2014-09-30 19:47:25 +0000 |
---|---|---|
committer | Othmar Gsenger <otti@anytun.org> | 2014-09-30 19:47:25 +0000 |
commit | 2ca5c8503f46b3c17336faa6b547a30d695aec73 (patch) | |
tree | 36fbfe858d16879fa3d5254c45a3ffafe1e02c88 /src/crypto/interface.cpp | |
parent | added openssl crypto class (diff) |
refactored crypto interface. linking fails, needs fixing
Diffstat (limited to 'src/crypto/interface.cpp')
-rw-r--r-- | src/crypto/interface.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/crypto/interface.cpp b/src/crypto/interface.cpp index a38ad48..fab3565 100644 --- a/src/crypto/interface.cpp +++ b/src/crypto/interface.cpp @@ -47,6 +47,22 @@ namespace crypto { +void Interface::encrypt(PlainPacket& in, EncryptedPacket& out, const Buffer& masterkey, const Buffer& mastersalt, role_t role, seq_nr_t seq_nr, sender_id_t sender_id, mux_t mux) +{ + uint32_t len = cipher(in, in.getLength(), out.getPayload(), out.getPayloadLength(), masterkey, mastersalt, role, seq_nr, sender_id, mux); + out.setSenderId(sender_id); + out.setSeqNr(seq_nr); + out.setMux(mux); + out.setPayloadLength(len); +} + +void Interface::decrypt(EncryptedPacket& in, PlainPacket& out, const Buffer& masterkey, const Buffer& mastersalt, role_t role) +{ + uint32_t len = decipher(in.getPayload() , in.getPayloadLength(), out, out.getLength(), masterkey, mastersalt, role, in.getSeqNr(), in.getSenderId(), in.getMux()); + out.setLength(len); +} + + satp_prf_label_t Interface::convertLabel(kd_dir_t dir, role_t role, satp_prf_label_t label) { switch(label) { |