Vanetza
 
Loading...
Searching...
No Matches
decap_confirm.hpp
1#ifndef DECAP_CONFIRM_HPP
2#define DECAP_CONFIRM_HPP
3
4#include <vanetza/common/its_aid.hpp>
5#include <vanetza/net/packet_variant.hpp>
6#include <vanetza/security/certificate_validity.hpp>
7#include <vanetza/security/hashed_id.hpp>
8#include <boost/optional.hpp>
9#include <cstdint>
10
11namespace vanetza
12{
13namespace security
14{
15
16/**
17 * SN-DECAP.confirm report codes
18 * \see TS 102 723-8 v1.1.1 table 27
19 */
20enum class DecapReport
21{
22 Success,
23 False_Signature,
24 Invalid_Certificate,
25 Revoked_Certificate,
26 Inconsistant_Chain,
27 Invalid_Timestamp,
28 Duplicate_Message,
29 Invalid_Mobility_Data,
30 Unsigned_Message,
31 Signer_Certificate_Not_Found,
32 Unsupported_Signer_Identifier_Type,
33 Incompatible_Protocol,
34 Unencrypted_Message,
35 Decryption_Error,
36};
37
38/** \brief contains output of the verify process
39* described in
40* TS 102 723-8 v1.0.0 (2013-07)
41* TS 102 636-4-1 v1.2.3 (2015-01)
42*/
44{
45 // plaintext_packet_length is gathered via ByteBuffer::size(); valid range 0 ... 2^16-1; mandatory
46 PacketVariant plaintext_payload; // mandatory
47 DecapReport report; // mandatory
48 CertificateValidity certificate_validity; // non-standard extension
49 boost::optional<HashedId8> certificate_id; // optional
50 ItsAid its_aid; // mandatory
51 ByteBuffer permissions; // mandatory
52};
53
54} // namespace security
55} // namespace vanetza
56
57#endif // DECAP_CONFIRM_HPP
contains output of the verify process described in TS 102 723-8 v1.0.0 (2013-07) TS 102 636-4-1 v1....