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