mirror of
https://github.com/XRPLF/rippled.git
synced 2026-02-07 23:42:28 +00:00
deploy: 5f638f5553
This commit is contained in:
@@ -184,132 +184,116 @@ $(document).ready(function() { init_codefold(0); });
|
||||
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> {</div>
|
||||
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="keyword">auto</span>& overlay = <span class="keyword">dynamic_cast<</span><a class="code hl_class" href="classxrpl_1_1OverlayImpl.html">OverlayImpl</a>&<span class="keyword">></span>(env.<a class="code hl_function" href="classxrpl_1_1test_1_1jtx_1_1Env.html#a00e2950377b152b92bbf93e4b3c8c474">app</a>().<a class="code hl_function" href="classxrpl_1_1Application.html#ac6a91561d0d7a703f6a90ceacd32caef">overlay</a>());</div>
|
||||
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> boost::beast::http::request<boost::beast::http::dynamic_body> request;</div>
|
||||
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <span class="keyword">auto</span> stream_ptr = <a class="code hl_variableRef" href="http://en.cppreference.com/w/cpp/types/is_same.html">std::make_unique<stream_type></a>(</div>
|
||||
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <a class="code hl_typedef" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#ab26e55f7056f46a3e2c8c680bfa4c4f2">socket_type</a>(env.<a class="code hl_function" href="classxrpl_1_1test_1_1jtx_1_1Env.html#a00e2950377b152b92bbf93e4b3c8c474">app</a>().<a class="code hl_function" href="classxrpl_1_1Application.html#a947bd93203b27c026c29d79fa2a90ed6">getIOContext</a>()), *<a class="code hl_variable" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a8ba5ea48791f757343d8d4ec87692b8b">context_</a>);</div>
|
||||
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> </div>
|
||||
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> <a class="code hl_class" href="classbeast_1_1IP_1_1Endpoint.html">beast::IP::Endpoint</a> local(</div>
|
||||
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> boost::asio::ip::make_address(<span class="stringliteral">"172.1.1.1"</span>), 51235);</div>
|
||||
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> <a class="code hl_class" href="classbeast_1_1IP_1_1Endpoint.html">beast::IP::Endpoint</a> remote(</div>
|
||||
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> boost::asio::ip::make_address(<span class="stringliteral">"172.1.1.2"</span>), 51235);</div>
|
||||
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> </div>
|
||||
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> <a class="code hl_class" href="classxrpl_1_1PublicKey.html">PublicKey</a> key(<a class="code hl_variableRef" href="http://en.cppreference.com/w/cpp/types/is_same.html">std::get<0></a>(<a class="code hl_function" href="namespacexrpl.html#a0cdcad0a3c6a2c14de0860e9ad61b8e1">randomKeyPair</a>(<a class="code hl_enumvalue" href="namespacexrpl.html#a0b0d50fcc4520f33b4417f1b74eee591a8183aa2c95dc1385c8f58bf1917fcb0b">KeyType::ed25519</a>)));</div>
|
||||
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> <span class="keyword">auto</span> consumer = overlay.resourceManager().newInboundEndpoint(remote);</div>
|
||||
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> <span class="keyword">auto</span> [slot, _] = overlay.peerFinder().new_inbound_slot(local, remote);</div>
|
||||
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <span class="keyword">auto</span> stream_ptr = <a class="code hl_variableRef" href="http://en.cppreference.com/w/cpp/types/is_same.html">std::make_unique<stream_type></a>(<a class="code hl_typedef" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#ab26e55f7056f46a3e2c8c680bfa4c4f2">socket_type</a>(env.<a class="code hl_function" href="classxrpl_1_1test_1_1jtx_1_1Env.html#a00e2950377b152b92bbf93e4b3c8c474">app</a>().<a class="code hl_function" href="classxrpl_1_1Application.html#a947bd93203b27c026c29d79fa2a90ed6">getIOContext</a>()), *<a class="code hl_variable" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a8ba5ea48791f757343d8d4ec87692b8b">context_</a>);</div>
|
||||
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> </div>
|
||||
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <a class="code hl_class" href="classbeast_1_1IP_1_1Endpoint.html">beast::IP::Endpoint</a> local(boost::asio::ip::make_address(<span class="stringliteral">"172.1.1.1"</span>), 51235);</div>
|
||||
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> <a class="code hl_class" href="classbeast_1_1IP_1_1Endpoint.html">beast::IP::Endpoint</a> remote(boost::asio::ip::make_address(<span class="stringliteral">"172.1.1.2"</span>), 51235);</div>
|
||||
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> </div>
|
||||
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> <a class="code hl_class" href="classxrpl_1_1PublicKey.html">PublicKey</a> key(<a class="code hl_variableRef" href="http://en.cppreference.com/w/cpp/types/is_same.html">std::get<0></a>(<a class="code hl_function" href="namespacexrpl.html#a0cdcad0a3c6a2c14de0860e9ad61b8e1">randomKeyPair</a>(<a class="code hl_enumvalue" href="namespacexrpl.html#a0b0d50fcc4520f33b4417f1b74eee591a8183aa2c95dc1385c8f58bf1917fcb0b">KeyType::ed25519</a>)));</div>
|
||||
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> <span class="keyword">auto</span> consumer = overlay.resourceManager().newInboundEndpoint(remote);</div>
|
||||
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <span class="keyword">auto</span> [slot, _] = overlay.peerFinder().new_inbound_slot(local, remote);</div>
|
||||
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> </div>
|
||||
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> <span class="keyword">auto</span> peer = <a class="code hl_variableRef" href="http://en.cppreference.com/w/cpp/types/is_same.html">std::make_shared<PeerTest></a>(</div>
|
||||
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> env.<a class="code hl_function" href="classxrpl_1_1test_1_1jtx_1_1Env.html#a00e2950377b152b92bbf93e4b3c8c474">app</a>(), slot, std::move(request), key, <a class="code hl_variable" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a6f2c947db4b06f106620a87cd49a58e2">protocolVersion_</a>, consumer, std::move(stream_ptr), overlay);</div>
|
||||
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> </div>
|
||||
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> <span class="keyword">auto</span> peer = <a class="code hl_variableRef" href="http://en.cppreference.com/w/cpp/types/is_same.html">std::make_shared<PeerTest></a>(</div>
|
||||
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> env.<a class="code hl_function" href="classxrpl_1_1test_1_1jtx_1_1Env.html#a00e2950377b152b92bbf93e4b3c8c474">app</a>(),</div>
|
||||
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> slot,</div>
|
||||
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> std::move(request),</div>
|
||||
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> key,</div>
|
||||
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> <a class="code hl_variable" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a6f2c947db4b06f106620a87cd49a58e2">protocolVersion_</a>,</div>
|
||||
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> consumer,</div>
|
||||
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> std::move(stream_ptr),</div>
|
||||
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> overlay);</div>
|
||||
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> overlay.add_active(peer);</div>
|
||||
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <span class="keywordflow">return</span> peer;</div>
|
||||
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> }</div>
|
||||
</div>
|
||||
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> </div>
|
||||
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr<protocol::TMGetObjectByHash></a></div>
|
||||
<div class="foldopen" id="foldopen00117" data-start="{" data-end="}">
|
||||
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"><a class="line" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a07306cd6b0295a5487cb5fed7c0ced21"> 117</a></span> <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a07306cd6b0295a5487cb5fed7c0ced21">createRequest</a>(<span class="keywordtype">size_t</span> <span class="keyword">const</span> numObjects, <a class="code hl_class" href="classxrpl_1_1test_1_1jtx_1_1Env.html">Env</a>& env)</div>
|
||||
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> {</div>
|
||||
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> <span class="comment">// Store objects in the NodeStore that will be found during the query</span></div>
|
||||
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> <span class="keyword">auto</span>& nodeStore = env.<a class="code hl_function" href="classxrpl_1_1test_1_1jtx_1_1Env.html#a00e2950377b152b92bbf93e4b3c8c474">app</a>().<a class="code hl_function" href="classxrpl_1_1Application.html#a75962a256fe4b18ec02f901309456654">getNodeStore</a>();</div>
|
||||
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> </div>
|
||||
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> overlay.add_active(peer);</div>
|
||||
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> <span class="keywordflow">return</span> peer;</div>
|
||||
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> }</div>
|
||||
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> <span class="comment">// Create and store objects</span></div>
|
||||
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<uint256></a> hashes;</div>
|
||||
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> hashes.<a class="code hl_functionRef" href="http://en.cppreference.com/w/cpp/container/vector/reserve.html">reserve</a>(numObjects);</div>
|
||||
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < numObjects; ++i)</div>
|
||||
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> {</div>
|
||||
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> <a class="code hl_class" href="classxrpl_1_1base__uint.html">uint256</a> hash(<a class="code hl_function" href="namespacexrpl.html#a2bf1136970cad3731cf6d24f054e119f">xrpl::sha512Half</a>(i));</div>
|
||||
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> hashes.<a class="code hl_functionRef" href="http://en.cppreference.com/w/cpp/container/vector/push_back.html">push_back</a>(hash);</div>
|
||||
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> </div>
|
||||
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/container/vector.html">Blob</a> <a class="code hl_variable" href="namespacexrpl_1_1test_1_1jtx.html#a293e60256c283a66afb95f4e20e1a3e3">data</a>(100, <span class="keyword">static_cast<</span><span class="keywordtype">unsigned</span> <span class="keywordtype">char</span><span class="keyword">></span>(i % 256));</div>
|
||||
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> nodeStore.store(<a class="code hl_enumvalue" href="namespacexrpl.html#a663b0ac7aab40440c7da9e3ea84a2ebfa1b59fd3913b8f280305fd1d9d6359504">hotLEDGER</a>, std::move(<a class="code hl_variable" href="namespacexrpl_1_1test_1_1jtx.html#a293e60256c283a66afb95f4e20e1a3e3">data</a>), hash, nodeStore.earliestLedgerSeq());</div>
|
||||
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> }</div>
|
||||
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> </div>
|
||||
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> <span class="comment">// Create a request with more objects than hardMaxReplyNodes</span></div>
|
||||
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> <span class="keyword">auto</span> request = <a class="code hl_variableRef" href="http://en.cppreference.com/w/cpp/types/is_same.html">std::make_shared<protocol::TMGetObjectByHash></a>();</div>
|
||||
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> request->set_type(protocol::TMGetObjectByHash_ObjectType_otLEDGER);</div>
|
||||
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> request->set_query(<span class="keyword">true</span>);</div>
|
||||
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> </div>
|
||||
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < numObjects; ++i)</div>
|
||||
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> {</div>
|
||||
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> <span class="keyword">auto</span> <span class="keywordtype">object</span> = request->add_objects();</div>
|
||||
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> <span class="keywordtype">object</span>->set_hash(hashes[i].<a class="code hl_variable" href="namespacexrpl_1_1test_1_1jtx.html#a293e60256c283a66afb95f4e20e1a3e3">data</a>(), hashes[i].size());</div>
|
||||
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> <span class="keywordtype">object</span>->set_ledgerseq(i);</div>
|
||||
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> }</div>
|
||||
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> <span class="keywordflow">return</span> request;</div>
|
||||
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> }</div>
|
||||
</div>
|
||||
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> </div>
|
||||
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr<protocol::TMGetObjectByHash></a></div>
|
||||
<div class="foldopen" id="foldopen00127" data-start="{" data-end="}">
|
||||
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"><a class="line" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a07306cd6b0295a5487cb5fed7c0ced21"> 127</a></span> <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a07306cd6b0295a5487cb5fed7c0ced21">createRequest</a>(<span class="keywordtype">size_t</span> <span class="keyword">const</span> numObjects, <a class="code hl_class" href="classxrpl_1_1test_1_1jtx_1_1Env.html">Env</a>& env)</div>
|
||||
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> {</div>
|
||||
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> <span class="comment">// Store objects in the NodeStore that will be found during the query</span></div>
|
||||
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> <span class="keyword">auto</span>& nodeStore = env.<a class="code hl_function" href="classxrpl_1_1test_1_1jtx_1_1Env.html#a00e2950377b152b92bbf93e4b3c8c474">app</a>().<a class="code hl_function" href="classxrpl_1_1Application.html#a75962a256fe4b18ec02f901309456654">getNodeStore</a>();</div>
|
||||
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> </div>
|
||||
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> <span class="comment">// Create and store objects</span></div>
|
||||
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<uint256></a> hashes;</div>
|
||||
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> hashes.<a class="code hl_functionRef" href="http://en.cppreference.com/w/cpp/container/vector/reserve.html">reserve</a>(numObjects);</div>
|
||||
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < numObjects; ++i)</div>
|
||||
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> {</div>
|
||||
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> <a class="code hl_class" href="classxrpl_1_1base__uint.html">uint256</a> hash(<a class="code hl_function" href="namespacexrpl.html#a2bf1136970cad3731cf6d24f054e119f">xrpl::sha512Half</a>(i));</div>
|
||||
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> hashes.<a class="code hl_functionRef" href="http://en.cppreference.com/w/cpp/container/vector/push_back.html">push_back</a>(hash);</div>
|
||||
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> </div>
|
||||
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/container/vector.html">Blob</a> <a class="code hl_variable" href="namespacexrpl_1_1test_1_1jtx.html#a293e60256c283a66afb95f4e20e1a3e3">data</a>(100, <span class="keyword">static_cast<</span><span class="keywordtype">unsigned</span> <span class="keywordtype">char</span><span class="keyword">></span>(i % 256));</div>
|
||||
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> nodeStore.store(</div>
|
||||
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> <a class="code hl_enumvalue" href="namespacexrpl.html#a663b0ac7aab40440c7da9e3ea84a2ebfa1b59fd3913b8f280305fd1d9d6359504">hotLEDGER</a>,</div>
|
||||
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> std::move(<a class="code hl_variable" href="namespacexrpl_1_1test_1_1jtx.html#a293e60256c283a66afb95f4e20e1a3e3">data</a>),</div>
|
||||
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> hash,</div>
|
||||
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> nodeStore.earliestLedgerSeq());</div>
|
||||
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> }</div>
|
||||
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> </div>
|
||||
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> <span class="comment">// Create a request with more objects than hardMaxReplyNodes</span></div>
|
||||
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> <span class="keyword">auto</span> request = <a class="code hl_variableRef" href="http://en.cppreference.com/w/cpp/types/is_same.html">std::make_shared<protocol::TMGetObjectByHash></a>();</div>
|
||||
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> request->set_type(protocol::TMGetObjectByHash_ObjectType_otLEDGER);</div>
|
||||
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> request->set_query(<span class="keyword">true</span>);</div>
|
||||
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> </div>
|
||||
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < numObjects; ++i)</div>
|
||||
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> {</div>
|
||||
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> <span class="keyword">auto</span> <span class="keywordtype">object</span> = request->add_objects();</div>
|
||||
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> <span class="keywordtype">object</span>->set_hash(hashes[i].<a class="code hl_variable" href="namespacexrpl_1_1test_1_1jtx.html#a293e60256c283a66afb95f4e20e1a3e3">data</a>(), hashes[i].size());</div>
|
||||
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> <span class="keywordtype">object</span>->set_ledgerseq(i);</div>
|
||||
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> }</div>
|
||||
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> <span class="keywordflow">return</span> request;</div>
|
||||
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> }</div>
|
||||
</div>
|
||||
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> <span class="keywordtype">void</span></div>
|
||||
<div class="foldopen" id="foldopen00153" data-start="{" data-end="}">
|
||||
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"><a class="line" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a25ce0f1b51b89320c6278f82ab962967"> 153</a></span> <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a25ce0f1b51b89320c6278f82ab962967">testReplyLimit</a>(<span class="keywordtype">size_t</span> <span class="keyword">const</span> numObjects, <span class="keywordtype">int</span> <span class="keyword">const</span> expectedReplySize)</div>
|
||||
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> {</div>
|
||||
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> <a class="code hl_variable" href="classbeast_1_1unit__test_1_1suite.html#aaa1237d9b85c69d35fe86645cee094b5">testcase</a>(<span class="stringliteral">"Reply Limit"</span>);</div>
|
||||
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> </div>
|
||||
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> <a class="code hl_class" href="classxrpl_1_1test_1_1jtx_1_1Env.html">Env</a> env(*<span class="keyword">this</span>);</div>
|
||||
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test_1_1PeerTest.html#ad0f7980e83d7e984ef2d3c5176122b64">PeerTest::resetId</a>();</div>
|
||||
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> </div>
|
||||
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> <span class="keyword">auto</span> peer = <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a603667ee2086dac1d8d40ba5bf3e4c25">createPeer</a>(env);</div>
|
||||
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> </div>
|
||||
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> <span class="keywordtype">void</span></div>
|
||||
<div class="foldopen" id="foldopen00167" data-start="{" data-end="}">
|
||||
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"><a class="line" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a25ce0f1b51b89320c6278f82ab962967"> 167</a></span> <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a25ce0f1b51b89320c6278f82ab962967">testReplyLimit</a>(<span class="keywordtype">size_t</span> <span class="keyword">const</span> numObjects, <span class="keywordtype">int</span> <span class="keyword">const</span> expectedReplySize)</div>
|
||||
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> {</div>
|
||||
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> <a class="code hl_variable" href="classbeast_1_1unit__test_1_1suite.html#aaa1237d9b85c69d35fe86645cee094b5">testcase</a>(<span class="stringliteral">"Reply Limit"</span>);</div>
|
||||
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> </div>
|
||||
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> <a class="code hl_class" href="classxrpl_1_1test_1_1jtx_1_1Env.html">Env</a> env(*<span class="keyword">this</span>);</div>
|
||||
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test_1_1PeerTest.html#ad0f7980e83d7e984ef2d3c5176122b64">PeerTest::resetId</a>();</div>
|
||||
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> </div>
|
||||
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> <span class="keyword">auto</span> peer = <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a603667ee2086dac1d8d40ba5bf3e4c25">createPeer</a>(env);</div>
|
||||
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> </div>
|
||||
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> <span class="keyword">auto</span> request = <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a07306cd6b0295a5487cb5fed7c0ced21">createRequest</a>(numObjects, env);</div>
|
||||
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> <span class="comment">// Call the onMessage handler</span></div>
|
||||
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> peer->onMessage(request);</div>
|
||||
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> </div>
|
||||
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> <span class="comment">// Verify that a reply was sent</span></div>
|
||||
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> <span class="keyword">auto</span> sentMessage = peer->getLastSentMessage();</div>
|
||||
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> BEAST_EXPECT(sentMessage != <span class="keyword">nullptr</span>);</div>
|
||||
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> </div>
|
||||
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> <span class="comment">// Parse the reply message</span></div>
|
||||
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> <span class="keyword">auto</span> <span class="keyword">const</span>& buffer =</div>
|
||||
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> sentMessage->getBuffer(<a class="code hl_enumvalue" href="namespacexrpl_1_1compression.html#afa1b05e6d181cde4f9fe013d5de84724ad15305d7a4e34e02489c74a5ef542f36">compression::Compressed::Off</a>);</div>
|
||||
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> </div>
|
||||
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> BEAST_EXPECT(buffer.size() > 6);</div>
|
||||
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> <span class="comment">// Skip the message header (6 bytes: 4 for size, 2 for type)</span></div>
|
||||
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> protocol::TMGetObjectByHash reply;</div>
|
||||
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> BEAST_EXPECT(</div>
|
||||
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> reply.ParseFromArray(buffer.data() + 6, buffer.size() - 6) == <span class="keyword">true</span>);</div>
|
||||
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> <span class="keyword">auto</span> request = <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a07306cd6b0295a5487cb5fed7c0ced21">createRequest</a>(numObjects, env);</div>
|
||||
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> <span class="comment">// Call the onMessage handler</span></div>
|
||||
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> peer->onMessage(request);</div>
|
||||
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> </div>
|
||||
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> <span class="comment">// Verify that a reply was sent</span></div>
|
||||
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> <span class="keyword">auto</span> sentMessage = peer->getLastSentMessage();</div>
|
||||
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> BEAST_EXPECT(sentMessage != <span class="keyword">nullptr</span>);</div>
|
||||
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> </div>
|
||||
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> <span class="comment">// Parse the reply message</span></div>
|
||||
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> <span class="keyword">auto</span> <span class="keyword">const</span>& buffer = sentMessage->getBuffer(<a class="code hl_enumvalue" href="namespacexrpl_1_1compression.html#afa1b05e6d181cde4f9fe013d5de84724ad15305d7a4e34e02489c74a5ef542f36">compression::Compressed::Off</a>);</div>
|
||||
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> </div>
|
||||
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> BEAST_EXPECT(buffer.size() > 6);</div>
|
||||
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> <span class="comment">// Skip the message header (6 bytes: 4 for size, 2 for type)</span></div>
|
||||
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> protocol::TMGetObjectByHash reply;</div>
|
||||
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> BEAST_EXPECT(reply.ParseFromArray(buffer.data() + 6, buffer.size() - 6) == <span class="keyword">true</span>);</div>
|
||||
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> </div>
|
||||
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> <span class="comment">// Verify the reply is limited to expectedReplySize</span></div>
|
||||
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> BEAST_EXPECT(reply.objects_size() == expectedReplySize);</div>
|
||||
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> }</div>
|
||||
</div>
|
||||
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> </div>
|
||||
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> <span class="keywordtype">void</span></div>
|
||||
<div class="foldopen" id="foldopen00183" data-start="{" data-end="}">
|
||||
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"><a class="line" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#af0745477b0677d3e9fbf6df59370c3ef"> 183</a></span> <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#af0745477b0677d3e9fbf6df59370c3ef">run</a>()<span class="keyword"> override</span></div>
|
||||
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span><span class="keyword"> </span>{</div>
|
||||
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> <span class="keywordtype">int</span> <span class="keyword">const</span> limit = <span class="keyword">static_cast<</span><span class="keywordtype">int</span><span class="keyword">></span>(<a class="code hl_enumvalue" href="namespacexrpl_1_1Tuning.html#af6bb7fdfe7bf61b062c49c21d3deeb57aefac289bd3a013fc4ee21002c666d805">Tuning::hardMaxReplyNodes</a>);</div>
|
||||
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a25ce0f1b51b89320c6278f82ab962967">testReplyLimit</a>(limit + 1, limit);</div>
|
||||
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a25ce0f1b51b89320c6278f82ab962967">testReplyLimit</a>(limit, limit);</div>
|
||||
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a25ce0f1b51b89320c6278f82ab962967">testReplyLimit</a>(limit - 1, limit - 1);</div>
|
||||
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> }</div>
|
||||
</div>
|
||||
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span>};</div>
|
||||
</div>
|
||||
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> </div>
|
||||
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"><a class="line" href="namespacexrpl_1_1test.html#a43b56af5b5bfbc574c7c76650d71db2a"> 192</a></span>BEAST_DEFINE_TESTSUITE(TMGetObjectByHash, overlay, <a class="code hl_namespace" href="namespacexrpl.html">xrpl</a>);</div>
|
||||
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> </div>
|
||||
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> <span class="comment">// Verify the reply is limited to expectedReplySize</span></div>
|
||||
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> BEAST_EXPECT(reply.objects_size() == expectedReplySize);</div>
|
||||
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> }</div>
|
||||
</div>
|
||||
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> </div>
|
||||
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> <span class="keywordtype">void</span></div>
|
||||
<div class="foldopen" id="foldopen00199" data-start="{" data-end="}">
|
||||
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"><a class="line" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#af0745477b0677d3e9fbf6df59370c3ef"> 199</a></span> <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#af0745477b0677d3e9fbf6df59370c3ef">run</a>()<span class="keyword"> override</span></div>
|
||||
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span><span class="keyword"> </span>{</div>
|
||||
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> <span class="keywordtype">int</span> <span class="keyword">const</span> limit = <span class="keyword">static_cast<</span><span class="keywordtype">int</span><span class="keyword">></span>(<a class="code hl_enumvalue" href="namespacexrpl_1_1Tuning.html#af6bb7fdfe7bf61b062c49c21d3deeb57aefac289bd3a013fc4ee21002c666d805">Tuning::hardMaxReplyNodes</a>);</div>
|
||||
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a25ce0f1b51b89320c6278f82ab962967">testReplyLimit</a>(limit + 1, limit);</div>
|
||||
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a25ce0f1b51b89320c6278f82ab962967">testReplyLimit</a>(limit, limit);</div>
|
||||
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> <a class="code hl_function" href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a25ce0f1b51b89320c6278f82ab962967">testReplyLimit</a>(limit - 1, limit - 1);</div>
|
||||
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> }</div>
|
||||
</div>
|
||||
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span>};</div>
|
||||
</div>
|
||||
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> </div>
|
||||
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"><a class="line" href="namespacexrpl_1_1test.html#a43b56af5b5bfbc574c7c76650d71db2a"> 208</a></span>BEAST_DEFINE_TESTSUITE(TMGetObjectByHash, overlay, <a class="code hl_namespace" href="namespacexrpl.html">xrpl</a>);</div>
|
||||
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> </div>
|
||||
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span>} <span class="comment">// namespace test</span></div>
|
||||
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span>} <span class="comment">// namespace xrpl</span></div>
|
||||
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span>} <span class="comment">// namespace test</span></div>
|
||||
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span>} <span class="comment">// namespace xrpl</span></div>
|
||||
<div class="ttc" id="aclassbeast_1_1IP_1_1Endpoint_html"><div class="ttname"><a href="classbeast_1_1IP_1_1Endpoint.html">beast::IP::Endpoint</a></div><div class="ttdoc">A version-independent IP address and port combination.</div><div class="ttdef"><b>Definition</b> <a href="IPEndpoint_8h_source.html#l00018">IPEndpoint.h:19</a></div></div>
|
||||
<div class="ttc" id="aclassbeast_1_1unit__test_1_1suite_html"><div class="ttname"><a href="classbeast_1_1unit__test_1_1suite.html">beast::unit_test::suite</a></div><div class="ttdoc">A testsuite class.</div><div class="ttdef"><b>Definition</b> <a href="suite_8h_source.html#l00051">suite.h:52</a></div></div>
|
||||
<div class="ttc" id="aclassbeast_1_1unit__test_1_1suite_html_aaa1237d9b85c69d35fe86645cee094b5"><div class="ttname"><a href="classbeast_1_1unit__test_1_1suite.html#aaa1237d9b85c69d35fe86645cee094b5">beast::unit_test::suite::testcase</a></div><div class="ttdeci">testcase_t testcase</div><div class="ttdoc">Memberspace for declaring test cases.</div><div class="ttdef"><b>Definition</b> <a href="suite_8h_source.html#l00152">suite.h:152</a></div></div>
|
||||
<div class="ttc" id="aclassbeast_1_1unit__test_1_1suite_html_aaa1237d9b85c69d35fe86645cee094b5"><div class="ttname"><a href="classbeast_1_1unit__test_1_1suite.html#aaa1237d9b85c69d35fe86645cee094b5">beast::unit_test::suite::testcase</a></div><div class="ttdeci">testcase_t testcase</div><div class="ttdoc">Memberspace for declaring test cases.</div><div class="ttdef"><b>Definition</b> <a href="suite_8h_source.html#l00148">suite.h:148</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1Application_html"><div class="ttname"><a href="classxrpl_1_1Application.html">xrpl::Application</a></div><div class="ttdef"><b>Definition</b> <a href="Application_8h_source.html#l00094">Application.h:95</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1Application_html_a75962a256fe4b18ec02f901309456654"><div class="ttname"><a href="classxrpl_1_1Application.html#a75962a256fe4b18ec02f901309456654">xrpl::Application::getNodeStore</a></div><div class="ttdeci">virtual NodeStore::Database & getNodeStore()=0</div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1Application_html_a947bd93203b27c026c29d79fa2a90ed6"><div class="ttname"><a href="classxrpl_1_1Application.html#a947bd93203b27c026c29d79fa2a90ed6">xrpl::Application::getIOContext</a></div><div class="ttdeci">virtual boost::asio::io_context & getIOContext()=0</div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1Application_html_ac6a91561d0d7a703f6a90ceacd32caef"><div class="ttname"><a href="classxrpl_1_1Application.html#ac6a91561d0d7a703f6a90ceacd32caef">xrpl::Application::overlay</a></div><div class="ttdeci">virtual Overlay & overlay()=0</div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1OverlayImpl_html"><div class="ttname"><a href="classxrpl_1_1OverlayImpl.html">xrpl::OverlayImpl</a></div><div class="ttdef"><b>Definition</b> <a href="OverlayImpl_8h_source.html#l00043">OverlayImpl.h:44</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1PeerImp_html"><div class="ttname"><a href="classxrpl_1_1PeerImp.html">xrpl::PeerImp</a></div><div class="ttdoc">This class manages established peer-to-peer connections, handles message exchange,...</div><div class="ttdef"><b>Definition</b> <a href="PeerImp_8h_source.html#l00096">PeerImp.h:99</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1PeerImp_html_a111dccfb98bf9e7e3113bc3dc104698d"><div class="ttname"><a href="classxrpl_1_1PeerImp.html#a111dccfb98bf9e7e3113bc3dc104698d">xrpl::PeerImp::slot</a></div><div class="ttdeci">std::shared_ptr< PeerFinder::Slot > const & slot()</div><div class="ttdef"><b>Definition</b> <a href="PeerImp_8h_source.html#l00332">PeerImp.h:332</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1PeerImp_html"><div class="ttname"><a href="classxrpl_1_1PeerImp.html">xrpl::PeerImp</a></div><div class="ttdoc">This class manages established peer-to-peer connections, handles message exchange,...</div><div class="ttdef"><b>Definition</b> <a href="PeerImp_8h_source.html#l00096">PeerImp.h:97</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1PeerImp_html_a111dccfb98bf9e7e3113bc3dc104698d"><div class="ttname"><a href="classxrpl_1_1PeerImp.html#a111dccfb98bf9e7e3113bc3dc104698d">xrpl::PeerImp::slot</a></div><div class="ttdeci">std::shared_ptr< PeerFinder::Slot > const & slot()</div><div class="ttdef"><b>Definition</b> <a href="PeerImp_8h_source.html#l00327">PeerImp.h:327</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1PublicKey_html"><div class="ttname"><a href="classxrpl_1_1PublicKey.html">xrpl::PublicKey</a></div><div class="ttdoc">A public key.</div><div class="ttdef"><b>Definition</b> <a href="PublicKey_8h_source.html#l00042">PublicKey.h:43</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1Resource_1_1Consumer_html"><div class="ttname"><a href="classxrpl_1_1Resource_1_1Consumer.html">xrpl::Resource::Consumer</a></div><div class="ttdoc">An endpoint that consumes resources.</div><div class="ttdef"><b>Definition</b> <a href="Consumer_8h_source.html#l00016">Consumer.h:17</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1base__uint_html"><div class="ttname"><a href="classxrpl_1_1base__uint.html">xrpl::base_uint< 256 ></a></div></div>
|
||||
@@ -323,30 +307,30 @@ $(document).ready(function() { init_codefold(0); });
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1TMGetObjectByHash__test_1_1PeerTest_html_ad0f7980e83d7e984ef2d3c5176122b64"><div class="ttname"><a href="classxrpl_1_1test_1_1TMGetObjectByHash__test_1_1PeerTest.html#ad0f7980e83d7e984ef2d3c5176122b64">xrpl::test::TMGetObjectByHash_test::PeerTest::resetId</a></div><div class="ttdeci">static void resetId()</div><div class="ttdef"><b>Definition</b> <a href="TMGetObjectByHash__test_8cpp_source.html#l00082">TMGetObjectByHash_test.cpp:82</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1TMGetObjectByHash__test_1_1PeerTest_html_ad848708d66ef6592f0183c2d8b1f3d88"><div class="ttname"><a href="classxrpl_1_1test_1_1TMGetObjectByHash__test_1_1PeerTest.html#ad848708d66ef6592f0183c2d8b1f3d88">xrpl::test::TMGetObjectByHash_test::PeerTest::lastSentMessage_</a></div><div class="ttdeci">std::shared_ptr< Message > lastSentMessage_</div><div class="ttdef"><b>Definition</b> <a href="TMGetObjectByHash__test_8cpp_source.html#l00089">TMGetObjectByHash_test.cpp:89</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1TMGetObjectByHash__test_html"><div class="ttname"><a href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html">xrpl::test::TMGetObjectByHash_test</a></div><div class="ttdoc">Test for TMGetObjectByHash reply size limiting.</div><div class="ttdef"><b>Definition</b> <a href="TMGetObjectByHash__test_8cpp_source.html#l00028">TMGetObjectByHash_test.cpp:29</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1TMGetObjectByHash__test_html_a07306cd6b0295a5487cb5fed7c0ced21"><div class="ttname"><a href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a07306cd6b0295a5487cb5fed7c0ced21">xrpl::test::TMGetObjectByHash_test::createRequest</a></div><div class="ttdeci">std::shared_ptr< protocol::TMGetObjectByHash > createRequest(size_t const numObjects, Env &env)</div><div class="ttdef"><b>Definition</b> <a href="TMGetObjectByHash__test_8cpp_source.html#l00127">TMGetObjectByHash_test.cpp:127</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1TMGetObjectByHash__test_html_a07306cd6b0295a5487cb5fed7c0ced21"><div class="ttname"><a href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a07306cd6b0295a5487cb5fed7c0ced21">xrpl::test::TMGetObjectByHash_test::createRequest</a></div><div class="ttdeci">std::shared_ptr< protocol::TMGetObjectByHash > createRequest(size_t const numObjects, Env &env)</div><div class="ttdef"><b>Definition</b> <a href="TMGetObjectByHash__test_8cpp_source.html#l00117">TMGetObjectByHash_test.cpp:117</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1TMGetObjectByHash__test_html_a2362f3f22afbacf34a99766b55b4a6cd"><div class="ttname"><a href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a2362f3f22afbacf34a99766b55b4a6cd">xrpl::test::TMGetObjectByHash_test::stream_type</a></div><div class="ttdeci">boost::beast::ssl_stream< middle_type > stream_type</div><div class="ttdef"><b>Definition</b> <a href="TMGetObjectByHash__test_8cpp_source.html#l00031">TMGetObjectByHash_test.cpp:31</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1TMGetObjectByHash__test_html_a25ce0f1b51b89320c6278f82ab962967"><div class="ttname"><a href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a25ce0f1b51b89320c6278f82ab962967">xrpl::test::TMGetObjectByHash_test::testReplyLimit</a></div><div class="ttdeci">void testReplyLimit(size_t const numObjects, int const expectedReplySize)</div><div class="ttdoc">Test that reply is limited to hardMaxReplyNodes when more objects are requested than the limit allows...</div><div class="ttdef"><b>Definition</b> <a href="TMGetObjectByHash__test_8cpp_source.html#l00167">TMGetObjectByHash_test.cpp:167</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1TMGetObjectByHash__test_html_a25ce0f1b51b89320c6278f82ab962967"><div class="ttname"><a href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a25ce0f1b51b89320c6278f82ab962967">xrpl::test::TMGetObjectByHash_test::testReplyLimit</a></div><div class="ttdeci">void testReplyLimit(size_t const numObjects, int const expectedReplySize)</div><div class="ttdoc">Test that reply is limited to hardMaxReplyNodes when more objects are requested than the limit allows...</div><div class="ttdef"><b>Definition</b> <a href="TMGetObjectByHash__test_8cpp_source.html#l00153">TMGetObjectByHash_test.cpp:153</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1TMGetObjectByHash__test_html_a27d27d298c5baea5bdcf7155b3f7c300"><div class="ttname"><a href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a27d27d298c5baea5bdcf7155b3f7c300">xrpl::test::TMGetObjectByHash_test::middle_type</a></div><div class="ttdeci">boost::beast::tcp_stream middle_type</div><div class="ttdef"><b>Definition</b> <a href="TMGetObjectByHash__test_8cpp_source.html#l00030">TMGetObjectByHash_test.cpp:30</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1TMGetObjectByHash__test_html_a603667ee2086dac1d8d40ba5bf3e4c25"><div class="ttname"><a href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a603667ee2086dac1d8d40ba5bf3e4c25">xrpl::test::TMGetObjectByHash_test::createPeer</a></div><div class="ttdeci">std::shared_ptr< PeerTest > createPeer(jtx::Env &env)</div><div class="ttdef"><b>Definition</b> <a href="TMGetObjectByHash__test_8cpp_source.html#l00096">TMGetObjectByHash_test.cpp:96</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1TMGetObjectByHash__test_html_a6f2c947db4b06f106620a87cd49a58e2"><div class="ttname"><a href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a6f2c947db4b06f106620a87cd49a58e2">xrpl::test::TMGetObjectByHash_test::protocolVersion_</a></div><div class="ttdeci">ProtocolVersion protocolVersion_</div><div class="ttdef"><b>Definition</b> <a href="TMGetObjectByHash__test_8cpp_source.html#l00093">TMGetObjectByHash_test.cpp:93</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1TMGetObjectByHash__test_html_a8ba5ea48791f757343d8d4ec87692b8b"><div class="ttname"><a href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#a8ba5ea48791f757343d8d4ec87692b8b">xrpl::test::TMGetObjectByHash_test::context_</a></div><div class="ttdeci">shared_context context_</div><div class="ttdef"><b>Definition</b> <a href="TMGetObjectByHash__test_8cpp_source.html#l00092">TMGetObjectByHash_test.cpp:92</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1TMGetObjectByHash__test_html_ab26e55f7056f46a3e2c8c680bfa4c4f2"><div class="ttname"><a href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#ab26e55f7056f46a3e2c8c680bfa4c4f2">xrpl::test::TMGetObjectByHash_test::socket_type</a></div><div class="ttdeci">boost::asio::ip::tcp::socket socket_type</div><div class="ttdef"><b>Definition</b> <a href="TMGetObjectByHash__test_8cpp_source.html#l00032">TMGetObjectByHash_test.cpp:32</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1TMGetObjectByHash__test_html_af0745477b0677d3e9fbf6df59370c3ef"><div class="ttname"><a href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#af0745477b0677d3e9fbf6df59370c3ef">xrpl::test::TMGetObjectByHash_test::run</a></div><div class="ttdeci">void run() override</div><div class="ttdoc">Runs the suite.</div><div class="ttdef"><b>Definition</b> <a href="TMGetObjectByHash__test_8cpp_source.html#l00199">TMGetObjectByHash_test.cpp:199</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1jtx_1_1Env_html"><div class="ttname"><a href="classxrpl_1_1test_1_1jtx_1_1Env.html">xrpl::test::jtx::Env</a></div><div class="ttdoc">A transaction testing environment.</div><div class="ttdef"><b>Definition</b> <a href="Env_8h_source.html#l00101">Env.h:102</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1jtx_1_1Env_html_a00e2950377b152b92bbf93e4b3c8c474"><div class="ttname"><a href="classxrpl_1_1test_1_1jtx_1_1Env.html#a00e2950377b152b92bbf93e4b3c8c474">xrpl::test::jtx::Env::app</a></div><div class="ttdeci">Application & app()</div><div class="ttdef"><b>Definition</b> <a href="Env_8h_source.html#l00244">Env.h:244</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1TMGetObjectByHash__test_html_af0745477b0677d3e9fbf6df59370c3ef"><div class="ttname"><a href="classxrpl_1_1test_1_1TMGetObjectByHash__test.html#af0745477b0677d3e9fbf6df59370c3ef">xrpl::test::TMGetObjectByHash_test::run</a></div><div class="ttdeci">void run() override</div><div class="ttdoc">Runs the suite.</div><div class="ttdef"><b>Definition</b> <a href="TMGetObjectByHash__test_8cpp_source.html#l00183">TMGetObjectByHash_test.cpp:183</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1jtx_1_1Env_html"><div class="ttname"><a href="classxrpl_1_1test_1_1jtx_1_1Env.html">xrpl::test::jtx::Env</a></div><div class="ttdoc">A transaction testing environment.</div><div class="ttdef"><b>Definition</b> <a href="Env_8h_source.html#l00097">Env.h:98</a></div></div>
|
||||
<div class="ttc" id="aclassxrpl_1_1test_1_1jtx_1_1Env_html_a00e2950377b152b92bbf93e4b3c8c474"><div class="ttname"><a href="classxrpl_1_1test_1_1jtx_1_1Env.html#a00e2950377b152b92bbf93e4b3c8c474">xrpl::test::jtx::Env::app</a></div><div class="ttdeci">Application & app()</div><div class="ttdef"><b>Definition</b> <a href="Env_8h_source.html#l00230">Env.h:230</a></div></div>
|
||||
<div class="ttc" id="ainteger_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a></div></div>
|
||||
<div class="ttc" id="ais_same_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/types/is_same.html">std::is_same_v</a></div><div class="ttdeci">T is_same_v</div></div>
|
||||
<div class="ttc" id="anamespaceprotocol_html"><div class="ttname"><a href="namespaceprotocol.html">protocol</a></div><div class="ttdef"><b>Definition</b> <a href="ValidatorList_8h_source.html#l00019">ValidatorList.h:19</a></div></div>
|
||||
<div class="ttc" id="anamespacestd_html"><div class="ttname"><a href="namespacestd.html">std</a></div><div class="ttdoc">STL namespace.</div></div>
|
||||
<div class="ttc" id="anamespacexrpl_1_1Tuning_html_af6bb7fdfe7bf61b062c49c21d3deeb57aefac289bd3a013fc4ee21002c666d805"><div class="ttname"><a href="namespacexrpl_1_1Tuning.html#af6bb7fdfe7bf61b062c49c21d3deeb57aefac289bd3a013fc4ee21002c666d805">xrpl::Tuning::hardMaxReplyNodes</a></div><div class="ttdeci">@ hardMaxReplyNodes</div><div class="ttdoc">The hard cap on the number of ledger entries in a single reply.</div><div class="ttdef"><b>Definition</b> <a href="src_2xrpld_2overlay_2detail_2Tuning_8h_source.html#l00023">src/xrpld/overlay/detail/Tuning.h:23</a></div></div>
|
||||
<div class="ttc" id="anamespacexrpl_1_1compression_html_afa1b05e6d181cde4f9fe013d5de84724ad15305d7a4e34e02489c74a5ef542f36"><div class="ttname"><a href="namespacexrpl_1_1compression.html#afa1b05e6d181cde4f9fe013d5de84724ad15305d7a4e34e02489c74a5ef542f36">xrpl::compression::Compressed::Off</a></div><div class="ttdeci">@ Off</div></div>
|
||||
<div class="ttc" id="anamespacexrpl_1_1test_1_1jtx_html_a293e60256c283a66afb95f4e20e1a3e3"><div class="ttname"><a href="namespacexrpl_1_1test_1_1jtx.html#a293e60256c283a66afb95f4e20e1a3e3">xrpl::test::jtx::data</a></div><div class="ttdeci">auto const data</div><div class="ttdoc">General field definitions, or fields used in multiple transaction namespaces.</div><div class="ttdef"><b>Definition</b> <a href="TestHelpers_8h_source.html#l00292">TestHelpers.h:292</a></div></div>
|
||||
<div class="ttc" id="anamespacexrpl_1_1test_1_1jtx_html_a293e60256c283a66afb95f4e20e1a3e3"><div class="ttname"><a href="namespacexrpl_1_1test_1_1jtx.html#a293e60256c283a66afb95f4e20e1a3e3">xrpl::test::jtx::data</a></div><div class="ttdeci">auto const data</div><div class="ttdoc">General field definitions, or fields used in multiple transaction namespaces.</div><div class="ttdef"><b>Definition</b> <a href="TestHelpers_8h_source.html#l00275">TestHelpers.h:275</a></div></div>
|
||||
<div class="ttc" id="anamespacexrpl_html"><div class="ttname"><a href="namespacexrpl.html">xrpl</a></div><div class="ttdoc">Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.</div><div class="ttdef"><b>Definition</b> <a href="algorithm_8h_source.html#l00006">algorithm.h:6</a></div></div>
|
||||
<div class="ttc" id="anamespacexrpl_html_a0b0d50fcc4520f33b4417f1b74eee591a8183aa2c95dc1385c8f58bf1917fcb0b"><div class="ttname"><a href="namespacexrpl.html#a0b0d50fcc4520f33b4417f1b74eee591a8183aa2c95dc1385c8f58bf1917fcb0b">xrpl::KeyType::ed25519</a></div><div class="ttdeci">@ ed25519</div></div>
|
||||
<div class="ttc" id="anamespacexrpl_html_a0cdcad0a3c6a2c14de0860e9ad61b8e1"><div class="ttname"><a href="namespacexrpl.html#a0cdcad0a3c6a2c14de0860e9ad61b8e1">xrpl::randomKeyPair</a></div><div class="ttdeci">std::pair< PublicKey, SecretKey > randomKeyPair(KeyType type)</div><div class="ttdoc">Create a key pair using secure random numbers.</div><div class="ttdef"><b>Definition</b> <a href="SecretKey_8cpp_source.html#l00366">SecretKey.cpp:366</a></div></div>
|
||||
<div class="ttc" id="anamespacexrpl_html_a0cdcad0a3c6a2c14de0860e9ad61b8e1"><div class="ttname"><a href="namespacexrpl.html#a0cdcad0a3c6a2c14de0860e9ad61b8e1">xrpl::randomKeyPair</a></div><div class="ttdeci">std::pair< PublicKey, SecretKey > randomKeyPair(KeyType type)</div><div class="ttdoc">Create a key pair using secure random numbers.</div><div class="ttdef"><b>Definition</b> <a href="SecretKey_8cpp_source.html#l00347">SecretKey.cpp:347</a></div></div>
|
||||
<div class="ttc" id="anamespacexrpl_html_a2bf1136970cad3731cf6d24f054e119f"><div class="ttname"><a href="namespacexrpl.html#a2bf1136970cad3731cf6d24f054e119f">xrpl::sha512Half</a></div><div class="ttdeci">sha512_half_hasher::result_type sha512Half(Args const &... args)</div><div class="ttdoc">Returns the SHA512-Half of a series of objects.</div><div class="ttdef"><b>Definition</b> <a href="digest_8h_source.html#l00205">digest.h:205</a></div></div>
|
||||
<div class="ttc" id="anamespacexrpl_html_a3a4ac74e54fc39e5c6f7f61f93db19c1"><div class="ttname"><a href="namespacexrpl.html#a3a4ac74e54fc39e5c6f7f61f93db19c1">xrpl::http_request_type</a></div><div class="ttdeci">boost::beast::http::request< boost::beast::http::dynamic_body > http_request_type</div><div class="ttdef"><b>Definition</b> <a href="Handoff_8h_source.html#l00013">Handoff.h:14</a></div></div>
|
||||
<div class="ttc" id="anamespacexrpl_html_a5134a3e644a40509d0840760ed14d7a2"><div class="ttname"><a href="namespacexrpl.html#a5134a3e644a40509d0840760ed14d7a2">xrpl::make_SSLContext</a></div><div class="ttdeci">std::shared_ptr< boost::asio::ssl::context > make_SSLContext(std::string const &cipherList)</div><div class="ttdoc">Create a self-signed SSL context that allows anonymous Diffie Hellman.</div><div class="ttdef"><b>Definition</b> <a href="make__SSLContext_8cpp_source.html#l00366">make_SSLContext.cpp:366</a></div></div>
|
||||
<div class="ttc" id="anamespacexrpl_html_a3a4ac74e54fc39e5c6f7f61f93db19c1"><div class="ttname"><a href="namespacexrpl.html#a3a4ac74e54fc39e5c6f7f61f93db19c1">xrpl::http_request_type</a></div><div class="ttdeci">boost::beast::http::request< boost::beast::http::dynamic_body > http_request_type</div><div class="ttdef"><b>Definition</b> <a href="Handoff_8h_source.html#l00013">Handoff.h:13</a></div></div>
|
||||
<div class="ttc" id="anamespacexrpl_html_a5134a3e644a40509d0840760ed14d7a2"><div class="ttname"><a href="namespacexrpl.html#a5134a3e644a40509d0840760ed14d7a2">xrpl::make_SSLContext</a></div><div class="ttdeci">std::shared_ptr< boost::asio::ssl::context > make_SSLContext(std::string const &cipherList)</div><div class="ttdoc">Create a self-signed SSL context that allows anonymous Diffie Hellman.</div><div class="ttdef"><b>Definition</b> <a href="make__SSLContext_8cpp_source.html#l00344">make_SSLContext.cpp:344</a></div></div>
|
||||
<div class="ttc" id="anamespacexrpl_html_a663b0ac7aab40440c7da9e3ea84a2ebfa1b59fd3913b8f280305fd1d9d6359504"><div class="ttname"><a href="namespacexrpl.html#a663b0ac7aab40440c7da9e3ea84a2ebfa1b59fd3913b8f280305fd1d9d6359504">xrpl::hotLEDGER</a></div><div class="ttdeci">@ hotLEDGER</div><div class="ttdef"><b>Definition</b> <a href="NodeObject_8h_source.html#l00015">NodeObject.h:15</a></div></div>
|
||||
<div class="ttc" id="apair_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/utility/pair.html">std::pair</a></div></div>
|
||||
<div class="ttc" id="apush_back_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector/push_back.html">std::vector::push_back</a></div><div class="ttdeci">T push_back(T... args)</div></div>
|
||||
|
||||
Reference in New Issue
Block a user