classUpperTesterDenmFactory.html 14.7 KB
Newer Older
garciay's avatar
garciay committed
<!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: UpperTesterDenmFactory 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> &#124;
<a href="#pri-static-attribs">Static Private Attributes</a> &#124;
<a href="classUpperTesterDenmFactory-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">UpperTesterDenmFactory Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="UpperTesterDenmFactory_8hh_source.html">UpperTesterDenmFactory.hh</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for UpperTesterDenmFactory:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classUpperTesterDenmFactory.png" usemap="#UpperTesterDenmFactory_map" alt=""/>
  <map id="UpperTesterDenmFactory_map" name="UpperTesterDenmFactory_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,157,24"/>
garciay's avatar
garciay committed
</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:aa58d6486199740a1dcb0d7a0a3dc3790"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUpperTesterDenmFactory.html#aa58d6486199740a1dcb0d7a0a3dc3790">UpperTesterDenmFactory</a> ()</td></tr>
<tr class="separator:aa58d6486199740a1dcb0d7a0a3dc3790"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa33ba6ce26beaed7c296eb3b2a2a73ae"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classlayer.html">layer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUpperTesterDenmFactory.html#aa33ba6ce26beaed7c296eb3b2a2a73ae">create_layer</a> (const std::string &amp;p_type, const std::string &amp;p_param)</td></tr>
<tr class="memdesc:aa33ba6ce26beaed7c296eb3b2a2a73ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create the layers stack based on the provided layers stack description (cf. remark)  <a href="#aa33ba6ce26beaed7c296eb3b2a2a73ae">More...</a><br /></td></tr>
<tr class="separator:aa33ba6ce26beaed7c296eb3b2a2a73ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
garciay's avatar
garciay committed
<tr class="inherit_header pub_methods_classlayer__factory"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classlayer__factory')"><img src="closed.png" alt="-"/>&#160;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">&#160;</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">&#160;</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:ac4e0f9ffc7572dade7cf8f3e16f01af8"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classUpperTesterDenmFactory.html">UpperTesterDenmFactory</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUpperTesterDenmFactory.html#ac4e0f9ffc7572dade7cf8f3e16f01af8">_f</a></td></tr>
<tr class="separator:ac4e0f9ffc7572dade7cf8f3e16f01af8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="aa58d6486199740a1dcb0d7a0a3dc3790"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa58d6486199740a1dcb0d7a0a3dc3790">&#9670;&nbsp;</a></span>UpperTesterDenmFactory()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">UpperTesterDenmFactory::UpperTesterDenmFactory </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="aa33ba6ce26beaed7c296eb3b2a2a73ae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa33ba6ce26beaed7c296eb3b2a2a73ae">&#9670;&nbsp;</a></span>create_layer()</h2>
garciay's avatar
garciay committed

<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>* UpperTesterDenmFactory::create_layer </td>
garciay's avatar
garciay committed
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>param</em>&#160;</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 layer next_header : btpA|btpB (overwrite BTP.type) header_type : tsb|gbc header_sub_type : sh (single hop) DENM layer next_header : btpA|btpB (overwrite BTP.type) header_type : tsb|gbc BTP layer 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 layer 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 &amp; 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 &lt; frame_offset time_offset : Time offset, used to skip packets with time offset &lt; 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#af65482e4c77da879b8b3d2734a726853">layer_factory</a>.</p>
garciay's avatar
garciay committed

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="ac4e0f9ffc7572dade7cf8f3e16f01af8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac4e0f9ffc7572dade7cf8f3e16f01af8">&#9670;&nbsp;</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="classUpperTesterDenmFactory.html">UpperTesterDenmFactory</a> UpperTesterDenmFactory::_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="UpperTesterDenmFactory_8hh_source.html">UpperTesterDenmFactory.hh</a></li>
<li>/home/vagrant/TriesAndDelete/etsi_its/framework/src/<a class="el" href="UpperTesterDenmLayer_8cc.html">UpperTesterDenmLayer.cc</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Wed Apr 4 2018 14:16:37 for ETSI STF525 / Internal Testing test suite by &#160;<a href="http://www.doxygen.org/index.html">
garciay's avatar
garciay committed
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>