deCONZ C++ API v2.6.1
Loading...
Searching...
No Matches
security_key.h
1#ifndef SECURITY_KEY_H
2#define SECURITY_KEY_H
3
4#include "deconz/types.h"
5#include "deconz/aps.h"
6
7class SecKey
8{
9public:
10 SecKey()
11 {
12 m_keySize = KeySize128;
13 }
14
15 enum KeySize
16 {
17 KeySize128 = 16,
18 KeySizeMax = 16
19 };
20
21 uint8_t at(int idx) const
22 {
23 if (idx < m_keySize)
24 {
25 return m_key[idx];
26 }
27
28 return 0;
29 }
30
31 KeySize size() const { return m_keySize; }
32
33 void setData(const uint8_t *key, KeySize size)
34 {
35 m_keySize = size;
36
37 for (int i = 0; i < size; i++)
38 {
39 m_key[i] = key[i];
40 }
41 }
42
43private:
44 KeySize m_keySize;
45 uint8_t m_key[KeySizeMax];
46};
47
49{
50public:
51 deCONZ::Address &address() { return m_addr; }
52 const deCONZ::Address &address() const { return m_addr; }
53 SecKey &key() { return m_key; }
54 const SecKey &key() const { return m_key; }
55
56private:
57 deCONZ::Address m_addr;
58 SecKey m_key;
59};
60
61#endif // SECURITY_KEY_H
Definition security_key.h:49
Definition security_key.h:8