blob: 80b97a310b1dd721f87c11b148432da132b1ee17 [file] [log] [blame]
Prashanth Swaminathanc61cf192015-06-30 21:21:33 -07001#ifndef NDN_GEP_ENCRYPT_PARAMS_HPP
2#define NDN_GEP_ENCRYPT_PARAMS_HPP
3
4#include <ndn-cxx/encoding/buffer-stream.hpp>
Prashanth Swaminathand5b3eae2015-07-09 15:37:05 -07005#include "tlv.hpp"
Prashanth Swaminathanc61cf192015-06-30 21:21:33 -07006
7namespace ndn {
8namespace gep {
Prashanth Swaminathanc61cf192015-06-30 21:21:33 -07009namespace algo {
10
11class EncryptParams
12{
13public:
Prashanth Swaminathand5b3eae2015-07-09 15:37:05 -070014 EncryptParams(tlv::AlgorithmTypeValue algorithm, uint8_t ivLength = 0);
Prashanth Swaminathanc61cf192015-06-30 21:21:33 -070015
16 void
Prashanth Swaminathand5b3eae2015-07-09 15:37:05 -070017 setIV(const uint8_t* iv, size_t ivLen);
Prashanth Swaminathanc61cf192015-06-30 21:21:33 -070018
19 void
Prashanth Swaminathand5b3eae2015-07-09 15:37:05 -070020 setAlgorithmType(tlv::AlgorithmTypeValue algorithm);
Prashanth Swaminathanc61cf192015-06-30 21:21:33 -070021
22 Buffer
23 getIV() const;
24
Prashanth Swaminathand5b3eae2015-07-09 15:37:05 -070025 tlv::AlgorithmTypeValue
26 getAlgorithmType() const;
Prashanth Swaminathanc61cf192015-06-30 21:21:33 -070027
28private:
Prashanth Swaminathand5b3eae2015-07-09 15:37:05 -070029 tlv::AlgorithmTypeValue m_algo;
Prashanth Swaminathanc61cf192015-06-30 21:21:33 -070030 Buffer m_iv;
31};
32
33} // namespace algo
34} // namespace gep
35} // namespace ndn
36
37#endif // NDN_GEP_ENCRYPT_PARAMS_HPP