mirror of
https://github.com/XRPLF/rippled.git
synced 2025-11-22 12:05:53 +00:00
deploy: e514de76ed
This commit is contained in:
@@ -145,7 +145,7 @@ $(function() {
|
||||
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">return</span> reply;</div>
|
||||
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> }</div>
|
||||
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> </div>
|
||||
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <span class="keyword">auto</span> <span class="keyword">const</span> path = [&]() -> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional</a><<a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<Blob></a>> {</div>
|
||||
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <span class="keyword">auto</span> <span class="keyword">const</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a> = [&]() -> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional</a><<a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<Blob></a>> {</div>
|
||||
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">switch</span> (packet.type())</div>
|
||||
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> {</div>
|
||||
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">case</span> protocol::lmACCOUNT_STATE:</div>
|
||||
@@ -159,7 +159,7 @@ $(function() {
|
||||
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> }</div>
|
||||
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> }();</div>
|
||||
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> </div>
|
||||
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">if</span> (!path)</div>
|
||||
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">if</span> (!<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>)</div>
|
||||
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> {</div>
|
||||
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> JLOG(<a class="code hl_variable" href="classripple_1_1LedgerReplayMsgHandler.html#af352d6af412eb7e1215ad63e1d482a9f">journal_</a>.<a class="code hl_function" href="classbeast_1_1Journal.html#a556228cb60bcf405c225d3f64b7b01ae">debug</a>()) << <span class="stringliteral">"getProofPath: Don't have the node "</span> << key</div>
|
||||
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> << <span class="stringliteral">" of ledger "</span> << ledgerHash;</div>
|
||||
@@ -172,12 +172,12 @@ $(function() {
|
||||
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <a class="code hl_function" href="namespaceripple.html#ad6ef4b359d5387fe20ce3ca7e3a293e7">addRaw</a>(ledger->info(), nData);</div>
|
||||
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> reply.set_ledgerheader(nData.<a class="code hl_function" href="classripple_1_1Serializer.html#afabc4cec20b78fb11847f5b09693d0dc">getDataPtr</a>(), nData.<a class="code hl_function" href="classripple_1_1Serializer.html#aa5c7aa53db0c7c90c6a86dd5144e9255">getLength</a>());</div>
|
||||
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="comment">// pack path</span></div>
|
||||
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> <span class="keyword">const</span>& b : *path)</div>
|
||||
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> <span class="keyword">const</span>& b : *<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>)</div>
|
||||
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> reply.add_path(b.data(), b.size());</div>
|
||||
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> </div>
|
||||
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> JLOG(<a class="code hl_variable" href="classripple_1_1LedgerReplayMsgHandler.html#af352d6af412eb7e1215ad63e1d482a9f">journal_</a>.<a class="code hl_function" href="classbeast_1_1Journal.html#a556228cb60bcf405c225d3f64b7b01ae">debug</a>()) << <span class="stringliteral">"getProofPath for the node "</span> << key</div>
|
||||
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> << <span class="stringliteral">" of ledger "</span> << ledgerHash << <span class="stringliteral">" path length "</span></div>
|
||||
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> << path->size();</div>
|
||||
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> << <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>->size();</div>
|
||||
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> <span class="keywordflow">return</span> reply;</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> </div>
|
||||
@@ -223,21 +223,21 @@ $(function() {
|
||||
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> }</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> <span class="comment">// verify the skip list</span></div>
|
||||
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<Blob></a> path;</div>
|
||||
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> path.reserve(reply.path_size());</div>
|
||||
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<Blob></a> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>;</div>
|
||||
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>.reserve(reply.path_size());</div>
|
||||
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < reply.path_size(); ++i)</div>
|
||||
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> {</div>
|
||||
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> path.emplace_back(reply.path(i).begin(), reply.path(i).end());</div>
|
||||
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>.emplace_back(reply.path(i).begin(), reply.path(i).end());</div>
|
||||
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> }</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="keywordflow">if</span> (!<a class="code hl_function" href="classripple_1_1SHAMap.html#af382ac10dccf3f4b82c64548cd05a677">SHAMap::verifyProofPath</a>(info.accountHash, key, path))</div>
|
||||
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> <span class="keywordflow">if</span> (!<a class="code hl_function" href="classripple_1_1SHAMap.html#af382ac10dccf3f4b82c64548cd05a677">SHAMap::verifyProofPath</a>(info.accountHash, key, <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>))</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> JLOG(<a class="code hl_variable" href="classripple_1_1LedgerReplayMsgHandler.html#af352d6af412eb7e1215ad63e1d482a9f">journal_</a>.<a class="code hl_function" href="classbeast_1_1Journal.html#a556228cb60bcf405c225d3f64b7b01ae">debug</a>()) << <span class="stringliteral">"Bad message: Proof path verify failed"</span>;</div>
|
||||
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</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> </div>
|
||||
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> <span class="comment">// deserialize the SHAMapItem</span></div>
|
||||
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> <span class="keyword">auto</span> node = <a class="code hl_function" href="classripple_1_1SHAMapTreeNode.html#ae1d129d85dd65647313d018be3cc07b8">SHAMapTreeNode::makeFromWire</a>(<a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(path.front()));</div>
|
||||
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> <span class="keyword">auto</span> node = <a class="code hl_function" href="classripple_1_1SHAMapTreeNode.html#ae1d129d85dd65647313d018be3cc07b8">SHAMapTreeNode::makeFromWire</a>(<a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>.front()));</div>
|
||||
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> <span class="keywordflow">if</span> (!node || !node->isLeaf())</div>
|
||||
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> {</div>
|
||||
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> JLOG(<a class="code hl_variable" href="classripple_1_1LedgerReplayMsgHandler.html#af352d6af412eb7e1215ad63e1d482a9f">journal_</a>.<a class="code hl_function" href="classbeast_1_1Journal.html#a556228cb60bcf405c225d3f64b7b01ae">debug</a>()) << <span class="stringliteral">"Bad message: Cannot deserialize"</span>;</div>
|
||||
@@ -405,11 +405,12 @@ $(function() {
|
||||
<div class="ttc" id="aclassripple_1_1Serializer_html_afabc4cec20b78fb11847f5b09693d0dc"><div class="ttname"><a href="classripple_1_1Serializer.html#afabc4cec20b78fb11847f5b09693d0dc">ripple::Serializer::getDataPtr</a></div><div class="ttdeci">void const * getDataPtr() const</div><div class="ttdef"><b>Definition:</b> <a href="Serializer_8h_source.html#l00224">Serializer.h:224</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1base__uint_html"><div class="ttname"><a href="classripple_1_1base__uint.html">ripple::base_uint< 256 ></a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1base__uint_html_a64d93405f8d7ba89f0a406b32015758f"><div class="ttname"><a href="classripple_1_1base__uint.html#a64d93405f8d7ba89f0a406b32015758f">ripple::base_uint< 256 >::size</a></div><div class="ttdeci">static constexpr std::size_t size()</div><div class="ttdef"><b>Definition:</b> <a href="base__uint_8h_source.html#l00526">base_uint.h:526</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1path_html"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1path.html">ripple::test::jtx::path</a></div><div class="ttdoc">Add a path.</div><div class="ttdef"><b>Definition:</b> <a href="paths_8h_source.html#l00057">paths.h:58</a></div></div>
|
||||
<div class="ttc" id="aemplace_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/map/emplace.html">std::map::emplace</a></div><div class="ttdeci">T emplace(T... args)</div></div>
|
||||
<div class="ttc" id="aexception_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/error/exception.html">std::exception</a></div></div>
|
||||
<div class="ttc" id="amap_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/map.html">std::map</a></div></div>
|
||||
<div class="ttc" id="amemory_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/header/memory.html">memory</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_1_1keylet_html_acda2d89a44551845c5be38291e5c9e8b"><div class="ttname"><a href="namespaceripple_1_1keylet.html#acda2d89a44551845c5be38291e5c9e8b">ripple::keylet::skip</a></div><div class="ttdeci">Keylet const & skip() noexcept</div><div class="ttdoc">The index of the "short" skip list.</div><div class="ttdef"><b>Definition:</b> <a href="Indexes_8cpp_source.html#l00188">Indexes.cpp:188</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_1_1keylet_html_acda2d89a44551845c5be38291e5c9e8b"><div class="ttname"><a href="namespaceripple_1_1keylet.html#acda2d89a44551845c5be38291e5c9e8b">ripple::keylet::skip</a></div><div class="ttdeci">Keylet const & skip() noexcept</div><div class="ttdoc">The index of the "short" skip list.</div><div class="ttdef"><b>Definition:</b> <a href="Indexes_8cpp_source.html#l00189">Indexes.cpp:189</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html"><div class="ttname"><a href="namespaceripple.html">ripple</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#l00026">algorithm.h:26</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_a5d9fe757c37a7602a883d30b14e1bf3cae6bed345f53943469741d7295552fcd4"><div class="ttname"><a href="namespaceripple.html#a5d9fe757c37a7602a883d30b14e1bf3cae6bed345f53943469741d7295552fcd4">ripple::SHAMapType::TRANSACTION</a></div><div class="ttdeci">@ TRANSACTION</div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_a71f5c3f4baec0e09c5eab4d6f5b5efcb"><div class="ttname"><a href="namespaceripple.html#a71f5c3f4baec0e09c5eab4d6f5b5efcb">ripple::calculateLedgerHash</a></div><div class="ttdeci">uint256 calculateLedgerHash(LedgerInfo const &info)</div><div class="ttdef"><b>Definition:</b> <a href="Ledger_8cpp_source.html#l00054">Ledger.cpp:54</a></div></div>
|
||||
|
||||
Reference in New Issue
Block a user