Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>ETSI STF525 / Internal Testing test suite: UpperTesterMapemSpatemFactory Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">ETSI STF525 / Internal Testing test suite
</div>
<div id="projectbrief">This project provides an internal testing test suite and its associated Test Adapter/Codec</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> |
<a href="#pri-static-attribs">Static Private Attributes</a> |
<a href="classUpperTesterMapemSpatemFactory-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">UpperTesterMapemSpatemFactory Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p><code>#include <<a class="el" href="UpperTesterMapemSpatemFactory_8hh_source.html">UpperTesterMapemSpatemFactory.hh</a>></code></p>
<div class="dynheader">
Inheritance diagram for UpperTesterMapemSpatemFactory:</div>
<div class="dyncontent">
<div class="center">
<img src="classUpperTesterMapemSpatemFactory.png" usemap="#UpperTesterMapemSpatemFactory_map" alt=""/>
<map id="UpperTesterMapemSpatemFactory_map" name="UpperTesterMapemSpatemFactory_map">
<area href="classlayer__factory.html" title="This class provides a factory class to create Layer class instances . " alt="layer_factory" shape="rect" coords="0,0,207,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a758d370d00084451ab6600c04a7d3d90"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classUpperTesterMapemSpatemFactory.html#a758d370d00084451ab6600c04a7d3d90">UpperTesterMapemSpatemFactory</a> ()</td></tr>
<tr class="separator:a758d370d00084451ab6600c04a7d3d90"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a0ca7e7fed9ee24260760426dd3952b54"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classLayer.html">Layer</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classUpperTesterMapemSpatemFactory.html#a0ca7e7fed9ee24260760426dd3952b54">create_layer</a> (const std::string &p_type, const std::string &p_param)</td></tr>
<tr class="memdesc:a0ca7e7fed9ee24260760426dd3952b54"><td class="mdescLeft"> </td><td class="mdescRight">Create the layers stack based on the provided layers stack description (cf. remark) <a href="#a0ca7e7fed9ee24260760426dd3952b54">More...</a><br /></td></tr>
<tr class="separator:a0ca7e7fed9ee24260760426dd3952b54"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pub_methods_classlayer__factory"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classlayer__factory')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classlayer__factory.html">layer_factory</a></td></tr>
<tr class="memitem:a483ba7ff7937b7fad9da71826f7be8ad inherit pub_methods_classlayer__factory"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classlayer__factory.html#a483ba7ff7937b7fad9da71826f7be8ad">layer_factory</a> ()</td></tr>
<tr class="separator:a483ba7ff7937b7fad9da71826f7be8ad inherit pub_methods_classlayer__factory"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-static-attribs"></a>
Static Private Attributes</h2></td></tr>
<tr class="memitem:affb098bdfad6930261444510e26d70ec"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classUpperTesterMapemSpatemFactory.html">UpperTesterMapemSpatemFactory</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classUpperTesterMapemSpatemFactory.html#affb098bdfad6930261444510e26d70ec">_f</a></td></tr>
<tr class="separator:affb098bdfad6930261444510e26d70ec"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<h2 class="groupheader">Constructor & Destructor Documentation</h2>
<a id="a758d370d00084451ab6600c04a7d3d90"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a758d370d00084451ab6600c04a7d3d90">◆ </a></span>UpperTesterMapemSpatemFactory()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">UpperTesterMapemSpatemFactory::UpperTesterMapemSpatemFactory </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a0ca7e7fed9ee24260760426dd3952b54"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0ca7e7fed9ee24260760426dd3952b54">◆ </a></span>create_layer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual <a class="el" href="classLayer.html">Layer</a>* UpperTesterMapemSpatemFactory::create_layer </td>
<td>(</td>
<td class="paramtype">const std::string & </td>
<td class="paramname"><em>type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::string & </td>
<td class="paramname"><em>param</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Create the layers stack based on the provided layers stack description (cf. remark) </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">p_type</td><td>The provided layers stack description </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">p_params</td><td>Optional parameters </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 on success, -1 otherwise </dd></dl>
<dl class="section remark"><dt>Remarks</dt><dd>The description below introduces layers stack in case of ITS project: CAM <a class="el" href="classLayer.html" title="Forward declaration of TITAN class. ">Layer</a> next_header : btpA|btpB (overwrite BTP.type) header_type : tsb|gbc header_sub_type : sh (single hop) DENM <a class="el" href="classLayer.html" title="Forward declaration of TITAN class. ">Layer</a> next_header : btpA|btpB (overwrite BTP.type) header_type : tsb|gbc BTP <a class="el" href="classLayer.html" title="Forward declaration of TITAN class. ">Layer</a> type : btpA|btpB destination port: dst_port source port : src_port device_mode : Set to 1 if the layer shall encapsulate upper layer PDU GN <a class="el" href="classLayer.html" title="Forward declaration of TITAN class. ">Layer</a> its_aid : ITS AID as defined by ETSI TS 102 965 V1.2.1. Default: 141 ll_address : GeoNetworking address of the Test System latitude : latitude of the Test System longitude : longitude of the Test System beaconing : Set to 1 if GnLayer shall start beaconing Beaconing timer expiry : expiry (ms) device_mode : Set to 1 if the layer shall encapsulate upper layer PDU secured_mode : Set to 1 if message exchanges shall be signed encrypted_mode : Set to 1 if message exchanges shall be encrypted NOTE: For signed & encrypted message exchanges, both secured_mode and encrypted_mode shall be set to 1 certificate : Certificate identifier the Test Adapter shall use secure_db_path : Path to the certificates and keys storage location hash : Hash algorithm to be used when secured mode is set Authorized values are SHA-256 or SHA-384 Default: SHA-256 signature : Signature algorithm to be used when secured mode is set Authorized values are NISTP-256, BP-256 and BP-384 Default: NISTP-256 cypher : Cyphering algorithm to be used when secured mode is set Ethernet layer mac_src :Source MAC address mac_bc :Broadcast address eth_type : Ethernet type Commsignia layer mac_src : Device MAC address, used to discard packets To indicate no filering, use the value 000000000000 mac_bc : Broadcast address eth_type : Ethernet type, used to discard packets target_host : Device address target_port : Device port source_port : Test System port interface_id: Interface id, used to discard packets tx_power : TX power (dB) UDP layer (IP/UDP based on Pcap) dst_ip : destination IPv4 address (aa.bb.cc.dd) dst_port: destination port src_ip : source IPv4 address (aa.bb.cc.dd) src_port: source port Pcap layer mac_src : Source MAC address, used to exclude from capture the acket sent by the Test System filter : Pcap filter (compliant with tcpdump syntax) E.g. filter=and ether src 04e548000001 Online mode: nic: Local NIC If set, online mode is used Offline mode (nic is present but not set): file : File to read frame_offset: Frame offset, used to skip packets with frame number < frame_offset time_offset : Time offset, used to skip packets with time offset < time_offset save_mode : 1 to save sent packet, 0 otherwise Here are some examples: GeoNetworking multiple component case: NodeB.geoNetworkingPort.params := "GN(ll_address=04e548000001,latitude=43551050,longitude=10298730,beaconing=0,expiry=1000,its_aid=141)/COMMSIGNIA(mac_src=04e548000001,mac_bc=FFFFFFFFFFFF,eth_type=8947,target_host=10.200.1.101,target_port=7942,source_port=7943,its_aid=141,interface_id=2,tx_power=-32)/UDP(dst_ip=192.168.56.1,dst_port=12346,src_ip=192.168.156.4,src_port=12345)/ETH(mac_src=04e548000001,mac_dst=0A0027000011,eth_type=0800)/PCAP(mac_src=04e548000001,file=/home/vagrant/TriesAndDelete/etsi_its/testdata/TC_AUTO_IOT_DENM_RWW_BV_01_short.pcap,filter=and (udp port 30000 or udp port 7943))" NodeC.geoNetworkingPort.params := "GN(ll_address=70b3d5791b48,latitude=43551050,longitude=10298730,beaconing=0,expiry=1000,its_aid=141)/COMMSIGNIA(mac_src=70b3d5791b48,mac_bc=FFFFFFFFFFFF,eth_type=8947,target_host=10.200.1.101,target_port=7942,source_port=7943,its_aid=141,interface_id=2,tx_power=-32)/UDP(dst_ip=192.168.56.1,dst_port=12346,src_ip=192.168.156.4,src_port=12345)/ETH(mac_src=70b3d5791b48,mac_dst=0A0027000011,eth_type=0800)/PCAP(mac_src=70b3d5791b48,file=/home/vagrant/TriesAndDelete/etsi_its/testdata/TC_AUTO_IOT_DENM_RWW_BV_01_short.pcap,filter=and (udp port 30000 or udp port 7943))" NodeB.geoNetworkingPort.params := "GN(ll_address=04e548000001,latitude=43551050,longitude=10298730,beaconing=0,expiry=1000,its_aid=141)/ETH(mac_src=04e548000001,mac_dst=0A0027000011,eth_type=0800)/PCAP(mac_src=04e548000001,file=/home/vagrant/TriesAndDelete/etsi_its/testdata/TC_AUTO_IOT_DENM_RWW_BV_01.pcap,filter=and ether src 04e548000001)" #NodeC.geoNetworkingPort.params := "GN(ll_address=70b3d5791b48,latitude=43551050,longitude=10298730,beaconing=0,expiry=1000,its_aid=141)/ETH(mac_src=70b3d5791b48,mac_dst=0A0027000011,eth_type=0800)/PCAP(mac_src=70b3d5791b48,file=/home/vagrant/TriesAndDelete/etsi_its/testdata/TC_AUTO_IOT_DENM_RWW_BV_01.pcap,filter=and ether src 70b3d5791b48)" UpperTester port based on UDP system.utPort.params := "UT_GN/UDP(dst_ip=192.168.1.1,dst_port=12346,src_ip=192.168.156.4,src_port=12345)/ETH(mac_src=026f8338c1e5,mac_dst=0A0027000011,eth_type=0800)/PCAP(mac_src=0800275c4959,nic=enp0s8,filter=and udp port 12346)" </dd></dl>
<p>Implements <a class="el" href="classlayer__factory.html#a5b5cb1af06e11ff28a3101d84daa2f0b">layer_factory</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="affb098bdfad6930261444510e26d70ec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#affb098bdfad6930261444510e26d70ec">◆ </a></span>_f</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classUpperTesterMapemSpatemFactory.html">UpperTesterMapemSpatemFactory</a> UpperTesterMapemSpatemFactory::_f</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>/home/vagrant/TriesAndDelete/etsi_its/framework/include/<a class="el" href="UpperTesterMapemSpatemFactory_8hh_source.html">UpperTesterMapemSpatemFactory.hh</a></li>
<li>/home/vagrant/TriesAndDelete/etsi_its/framework/src/<a class="el" href="UpperTesterMapemSpatemLayer_8cc.html">UpperTesterMapemSpatemLayer.cc</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Mon Mar 26 2018 10:16:15 for ETSI STF525 / Internal Testing test suite by  <a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>