1 /*
2    Copyright (c) 2021 Fraunhofer AISEC. See the COPYRIGHT
3    file at the top-level directory of this distribution.
4 
5    Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6    http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7    <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8    option. This file may not be copied, modified, or distributed
9    except according to those terms.
10 */
11 #ifndef RUNTIME_CONTEXT_H
12 #define RUNTIME_CONTEXT_H
13 
14 #include <stdint.h>
15 
16 #include "edhoc.h"
17 
18 struct runtime_context {
19 	uint8_t msg1[MSG_1_DEFAULT_SIZE];
20 	uint32_t msg1_len;
21 	uint8_t msg2[MSG_2_DEFAULT_SIZE];
22 	uint32_t msg2_len;
23 	uint8_t msg3[MSG_2_DEFAULT_SIZE];
24 	uint32_t msg3_len;
25 	uint8_t msg4[MSG_4_DEFAULT_SIZE];
26 	uint32_t msg4_len;
27 	struct suite suite;
28 	/*responder specific*/
29 	uint8_t th3[SHA_DEFAULT_SIZE];
30 	uint32_t th3_len;
31 	uint8_t PRK_3e2m[PRK_DEFAULT_SIZE];
32 	uint32_t PRK_3e2m_len;
33 	bool static_dh_i;
34 };
35 
36 
37 
38 #endif
39