ETSI STF525 / Internal Testing test suite
This project provides an internal testing test suite and its associated Test Adapter/Codec
Params.hh
Go to the documentation of this file.
1 
11 #pragma once
12 
13 #include <vector>
14 #include <map>
15 
21 class Params : public std::map<std::string, std::string> {
22 public:
23  // TODO Use static constexpr (see commsignia_layer.hh)
24  static const std::string& debug;
25 
26  static const std::string& loopback;
27 
28  static const std::string& mac_src;
29  static const std::string& mac_dst;
30  static const std::string& mac_bc;
31  static const std::string& eth_type;
32  static const std::string& beaconing;
33  static const std::string& station_type;
34  static const std::string& country;
35  static const std::string& type_of_address;
36  static const std::string& ssp;
37  static const std::string& its_aid;
38  static const std::string& gn_payload;
39  static const std::string& gn_next_header;
40  static const std::string& gn_header_type;
41  static const std::string& gn_header_sub_type;
42  static const std::string& gn_lifetime;
43  static const std::string& gn_traffic_class;
44  static const std::string& btp_type;
45  static const std::string& btp_payload;
46  static const std::string& btp_destination_port;
47  static const std::string& btp_info;
48 
49  static const std::string& nic;
50  static const std::string& ll_address;
51  static const std::string& latitude;
52  static const std::string& longitude;
53  static const std::string& expiry;
54 
55  static const std::string& device_mode;
56  static const std::string& secured_mode;
57  static const std::string& encrypted_mode;
58  static const std::string& enable_security_checks;
59  static const std::string& sec_db_path;
60  static const std::string& certificate;
61  static const std::string& hash;
62  static const std::string& signature;
63  static const std::string& cypher;
64  static const std::string& distanceA;
65  static const std::string& distanceB;
66  static const std::string& angle;
67 
68  static const std::string& payload_type;
69 
70  static const std::string& next_header;
71  static const std::string& header_type;
72  static const std::string& header_sub_type;
73 
74  static const std::string& interface_id;
75 
76  static const std::string& server;
77  static const std::string& port;
78  static const std::string& use_ssl;
79 
80 
85  Params() : std::map<std::string, std::string>() {};
91  explicit Params(const Params& p_params) : std::map<std::string, std::string>(p_params.begin(), p_params.end()) { };
92 
96  virtual ~Params() { };
97 
102  void log() const;
107  void log();
112  void reset();
113 
120  static void convert(Params& p_param, const std::string p_parameters);
121 }; // End of class Params
122 
static const std::string & longitude
Test system Latitude parameter name.
Definition: Params.hh:52
void reset()
Reset the content of this instance.
Definition: Params.cc:118
static const std::string & gn_header_sub_type
GeoNetworking HeaderType parameter name.
Definition: Params.hh:41
static const std::string & enable_security_checks
To indicate to the lower layer to apply encryption on message exchanges as defined in IEEE 1609...
Definition: Params.hh:58
static const std::string & sec_db_path
To indicates if security check failures shall be treated as error or warning.
Definition: Params.hh:59
static const std::string & latitude
Test system GeoNetworking LL-Address parameter name.
Definition: Params.hh:51
static const std::string & its_aid
SSP parameter name.
Definition: Params.hh:37
static const std::string & encrypted_mode
To indicate to the lower layer to apply signature on message exchanges as defined in IEEE 1609...
Definition: Params.hh:57
static void convert(Params &p_param, const std::string p_parameters)
Create a new instance of a Params object by converting a list of ITS parameters in string format (t1=...
Definition: Params.cc:73
virtual ~Params()
Default destructor.
Definition: Params.hh:96
static const std::string & header_type
Upper layer settings.
Definition: Params.hh:71
static const std::string & angle
Test system GeoNetworking DistanceB parameter name.
Definition: Params.hh:66
Params()
Set to 1 to use SSL to communicate with the HTTP server. Default: false.
Definition: Params.hh:85
static const std::string & nic
BTP Info parameter name.
Definition: Params.hh:49
static const std::string & header_sub_type
Upper layer settings.
Definition: Params.hh:72
static const std::string & gn_payload
ITS-AID parameter name.
Definition: Params.hh:38
static const std::string & gn_next_header
GeoNetworking Payload parameter name.
Definition: Params.hh:39
static const std::string & gn_traffic_class
GeoNetworking Lifetime parameter name.
Definition: Params.hh:43
static const std::string & next_header
Tyoe of payload, value is the ITS Conatainer message identifier or omitted in case of unknown payload...
Definition: Params.hh:70
static const std::string & hash
The certificate identifier the Test System shall use. E.g. CERT_TS_A.
Definition: Params.hh:61
static const std::string & use_ssl
Commsignia HTTP server port. Default: 80.
Definition: Params.hh:78
static const std::string & server
Commsignia antenna selector.
Definition: Params.hh:76
static const std::string & cypher
The signature algorithm the Test System shall use, authorised values are NISTP-256, BP-256 and BP-384. Default: NISTP-256.
Definition: Params.hh:63
static const std::string & mac_dst
Source MAC address parameter name.
Definition: Params.hh:29
static const std::string & type_of_address
Definition: Params.hh:35
static const std::string & country
Definition: Params.hh:34
static const std::string & interface_id
Upper layer settings.
Definition: Params.hh:74
static const std::string & device_mode
Test system GeoNetworking Lifetime parameter name (in ms)
Definition: Params.hh:55
static const std::string & mac_bc
Destination MAC address parameter name.
Definition: Params.hh:30
static const std::string & gn_lifetime
GeoNetworking HeaderSubType parameter name.
Definition: Params.hh:42
static const std::string & secured_mode
To indicate to the lower layer to act as a standalone device.
Definition: Params.hh:56
static const std::string & btp_destination_port
BTP Payload parameter name.
Definition: Params.hh:46
static const std::string & loopback
Set to 1 to enable the debug mode.
Definition: Params.hh:26
static const std::string & distanceB
Test system GeoNetworking DistanceA parameter name.
Definition: Params.hh:65
static const std::string & gn_header_type
GeoNetworking NextHeader parameter name.
Definition: Params.hh:40
This class provides basic functionalities for an ITS dictionary.
Definition: Params.hh:21
void log() const
Provides a dump of the content of this instance.
Definition: Params.hh:96
static const std::string & debug
Definition: Params.hh:24
static const std::string & signature
The digest algorithm the Test System shall use, authorised values are SHA-256 or SHA-384. Default: SHA-256.
Definition: Params.hh:62
static const std::string & beaconing
Ethernet type parameter name.
Definition: Params.hh:32
static const std::string & btp_type
GeoNetworking Traffic class parameter name.
Definition: Params.hh:44
static const std::string & expiry
Test system Longitude parameter name.
Definition: Params.hh:53
static const std::string & payload_type
Test system GeoNetworking Angle parameter name.
Definition: Params.hh:68
static const std::string & station_type
Beaconing mode parameter name.
Definition: Params.hh:33
static const std::string & port
HTTP server address (e.g. www.etsi.org)
Definition: Params.hh:77
static const std::string & mac_src
Definition: Params.hh:28
static const std::string & certificate
Path to the folder containing certificates.
Definition: Params.hh:60
static const std::string & distanceA
The encryption algorithm the Test System shall use, authorised values are NISTP-256 and BP-256...
Definition: Params.hh:64
static const std::string & ssp
Definition: Params.hh:36
static const std::string & btp_info
BTP DestinationPort parameter name.
Definition: Params.hh:47
static const std::string & eth_type
Broadcast MAC address parameter name.
Definition: Params.hh:31
Params(const Params &p_params)
Copy constructor Clone an existing instance of a Params object.
Definition: Params.hh:91
static const std::string & ll_address
Network Interface Card parameter name.
Definition: Params.hh:50
static const std::string & btp_payload
BTP Type parameter name.
Definition: Params.hh:45