diff --git a/ConnectAttempt_8cpp_source.html b/ConnectAttempt_8cpp_source.html index e3a75963f5..ce56527f8b 100644 --- a/ConnectAttempt_8cpp_source.html +++ b/ConnectAttempt_8cpp_source.html @@ -554,7 +554,7 @@ $(function() {
ripple::verifyHandshake
PublicKey verifyHandshake(boost::beast::http::fields const &headers, ripple::uint256 const &sharedValue, std::optional< std::uint32_t > networkID, beast::IP::Address public_ip, beast::IP::Address remote, Application &app)
Validate header fields necessary for upgrading the link to the peer protocol.
Definition: Handshake.cpp:226
ripple::OverlayImpl
Definition: OverlayImpl.h:58
ripple::ConnectAttempt::ConnectAttempt
ConnectAttempt(Application &app, boost::asio::io_service &io_service, endpoint_type const &remote_endpoint, Resource::Consumer usage, shared_context const &context, std::uint32_t id, std::shared_ptr< PeerFinder::Slot > const &slot, beast::Journal journal, OverlayImpl &overlay)
Definition: ConnectAttempt.cpp:28
-
ripple::makeRequest
auto makeRequest(bool crawlPublic, bool comprEnabled, bool ledgerReplayEnabled, bool txReduceRelayEnabled, bool vpReduceRelayEnabled) -> request_type
Make outbound http request.
Definition: Handshake.cpp:392
+
ripple::makeRequest
auto makeRequest(bool crawlPublic, bool comprEnabled, bool ledgerReplayEnabled, bool txReduceRelayEnabled, bool vpReduceRelayEnabled) -> request_type
Make outbound http request.
Definition: Handshake.cpp:365
ripple::ConnectAttempt::~ConnectAttempt
~ConnectAttempt()
Definition: ConnectAttempt.cpp:57
ripple::ConnectAttempt::parse_endpoint
static boost::asio::ip::tcp::endpoint parse_endpoint(std::string const &s, boost::system::error_code &ec)
Definition: ConnectAttempt.h:112
ripple::OverlayImpl::isPeerUpgrade
static bool isPeerUpgrade(http_request_type const &request)
Definition: OverlayImpl.cpp:326
diff --git a/Handshake_8cpp_source.html b/Handshake_8cpp_source.html index 3d33ea9db5..a01f5cc13e 100644 --- a/Handshake_8cpp_source.html +++ b/Handshake_8cpp_source.html @@ -358,154 +358,127 @@ $(function() {
301  throw std::runtime_error("Bad node public key");
302  }();
303 
-
304  if (publicKey == app.nodeIdentity().first)
-
305  {
-
306  auto const peerInstanceID = [&headers]() {
-
307  std::uint64_t iid = 0;
-
308 
-
309  if (auto const iter = headers.find("Instance-Cookie");
-
310  iter != headers.end())
-
311  {
-
312  if (!beast::lexicalCastChecked(iid, iter->value().to_string()))
-
313  throw std::runtime_error("Invalid instance cookie");
-
314 
-
315  if (iid == 0)
-
316  throw std::runtime_error("Invalid instance cookie");
-
317  }
-
318 
-
319  return iid;
-
320  }();
+
304  // This check gets two birds with one stone:
+
305  //
+
306  // 1) it verifies that the node we are talking to has access to the
+
307  // private key corresponding to the public node identity it claims.
+
308  // 2) it verifies that our SSL session is end-to-end with that node
+
309  // and not through a proxy that establishes two separate sessions.
+
310  {
+
311  auto const iter = headers.find("Session-Signature");
+
312 
+
313  if (iter == headers.end())
+
314  throw std::runtime_error("No session signature specified");
+
315 
+
316  auto sig = base64_decode(iter->value().to_string());
+
317 
+
318  if (!verifyDigest(publicKey, sharedValue, makeSlice(sig), false))
+
319  throw std::runtime_error("Failed to verify session");
+
320  }
321 
-
322  // Attempt to differentiate self-connections as opposed to accidental
-
323  // node identity reuse caused by accidental misconfiguration. When we
-
324  // detect this, we stop the process and log an error message.
-
325  if (peerInstanceID != app.instanceID())
-
326  {
-
327  app.signalStop("Remote server is using our node identity");
-
328  throw std::runtime_error("Node identity reuse detected");
-
329  }
+
322  if (publicKey == app.nodeIdentity().first)
+
323  throw std::runtime_error("Self connection");
+
324 
+
325  if (auto const iter = headers.find("Local-IP"); iter != headers.end())
+
326  {
+
327  boost::system::error_code ec;
+
328  auto const local_ip = boost::asio::ip::address::from_string(
+
329  iter->value().to_string(), ec);
330 
-
331  throw std::runtime_error("Self connection");
-
332  }
+
331  if (ec)
+
332  throw std::runtime_error("Invalid Local-IP");
333 
-
334  // This check gets two birds with one stone:
-
335  //
-
336  // 1) it verifies that the node we are talking to has access to the
-
337  // private key corresponding to the public node identity it claims.
-
338  // 2) it verifies that our SSL session is end-to-end with that node
-
339  // and not through a proxy that establishes two separate sessions.
-
340  {
-
341  auto const iter = headers.find("Session-Signature");
-
342 
-
343  if (iter == headers.end())
-
344  throw std::runtime_error("No session signature specified");
+
334  if (beast::IP::is_public(remote) && remote != local_ip)
+
335  throw std::runtime_error(
+
336  "Incorrect Local-IP: " + remote.to_string() + " instead of " +
+
337  local_ip.to_string());
+
338  }
+
339 
+
340  if (auto const iter = headers.find("Remote-IP"); iter != headers.end())
+
341  {
+
342  boost::system::error_code ec;
+
343  auto const remote_ip = boost::asio::ip::address::from_string(
+
344  iter->value().to_string(), ec);
345 
-
346  auto sig = base64_decode(iter->value().to_string());
-
347 
-
348  if (!verifyDigest(publicKey, sharedValue, makeSlice(sig), false))
-
349  throw std::runtime_error("Failed to verify session");
-
350  }
-
351 
-
352  if (auto const iter = headers.find("Local-IP"); iter != headers.end())
-
353  {
-
354  boost::system::error_code ec;
-
355  auto const local_ip = boost::asio::ip::address::from_string(
-
356  iter->value().to_string(), ec);
-
357 
-
358  if (ec)
-
359  throw std::runtime_error("Invalid Local-IP");
+
346  if (ec)
+
347  throw std::runtime_error("Invalid Remote-IP");
+
348 
+
349  if (beast::IP::is_public(remote) &&
+
350  !beast::IP::is_unspecified(public_ip))
+
351  {
+
352  // We know our public IP and peer reports our connection came
+
353  // from some other IP.
+
354  if (remote_ip != public_ip)
+
355  throw std::runtime_error(
+
356  "Incorrect Remote-IP: " + public_ip.to_string() +
+
357  " instead of " + remote_ip.to_string());
+
358  }
+
359  }
360 
-
361  if (beast::IP::is_public(remote) && remote != local_ip)
-
362  throw std::runtime_error(
-
363  "Incorrect Local-IP: " + remote.to_string() + " instead of " +
-
364  local_ip.to_string());
-
365  }
-
366 
-
367  if (auto const iter = headers.find("Remote-IP"); iter != headers.end())
-
368  {
-
369  boost::system::error_code ec;
-
370  auto const remote_ip = boost::asio::ip::address::from_string(
-
371  iter->value().to_string(), ec);
-
372 
-
373  if (ec)
-
374  throw std::runtime_error("Invalid Remote-IP");
-
375 
-
376  if (beast::IP::is_public(remote) &&
-
377  !beast::IP::is_unspecified(public_ip))
-
378  {
-
379  // We know our public IP and peer reports our connection came
-
380  // from some other IP.
-
381  if (remote_ip != public_ip)
-
382  throw std::runtime_error(
-
383  "Incorrect Remote-IP: " + public_ip.to_string() +
-
384  " instead of " + remote_ip.to_string());
-
385  }
-
386  }
-
387 
-
388  return publicKey;
+
361  return publicKey;
+
362 }
+
363 
+
364 auto
+
365 makeRequest(
+
366  bool crawlPublic,
+
367  bool comprEnabled,
+
368  bool ledgerReplayEnabled,
+
369  bool txReduceRelayEnabled,
+
370  bool vpReduceRelayEnabled) -> request_type
+
371 {
+
372  request_type m;
+
373  m.method(boost::beast::http::verb::get);
+
374  m.target("/");
+
375  m.version(11);
+
376  m.insert("User-Agent", BuildInfo::getFullVersionString());
+
377  m.insert("Upgrade", supportedProtocolVersions());
+
378  m.insert("Connection", "Upgrade");
+
379  m.insert("Connect-As", "Peer");
+
380  m.insert("Crawl", crawlPublic ? "public" : "private");
+
381  m.insert(
+
382  "X-Protocol-Ctl",
+
383  makeFeaturesRequestHeader(
+
384  comprEnabled,
+
385  ledgerReplayEnabled,
+
386  txReduceRelayEnabled,
+
387  vpReduceRelayEnabled));
+
388  return m;
389 }
390 
-
391 auto
-
392 makeRequest(
+
391 http_response_type
+
392 makeResponse(
393  bool crawlPublic,
-
394  bool comprEnabled,
-
395  bool ledgerReplayEnabled,
-
396  bool txReduceRelayEnabled,
-
397  bool vpReduceRelayEnabled) -> request_type
-
398 {
-
399  request_type m;
-
400  m.method(boost::beast::http::verb::get);
-
401  m.target("/");
-
402  m.version(11);
-
403  m.insert("User-Agent", BuildInfo::getFullVersionString());
-
404  m.insert("Upgrade", supportedProtocolVersions());
-
405  m.insert("Connection", "Upgrade");
-
406  m.insert("Connect-As", "Peer");
-
407  m.insert("Crawl", crawlPublic ? "public" : "private");
-
408  m.insert(
-
409  "X-Protocol-Ctl",
-
410  makeFeaturesRequestHeader(
-
411  comprEnabled,
-
412  ledgerReplayEnabled,
-
413  txReduceRelayEnabled,
-
414  vpReduceRelayEnabled));
-
415  return m;
-
416 }
-
417 
-
418 http_response_type
-
419 makeResponse(
-
420  bool crawlPublic,
-
421  http_request_type const& req,
-
422  beast::IP::Address public_ip,
-
423  beast::IP::Address remote_ip,
-
424  uint256 const& sharedValue,
-
425  std::optional<std::uint32_t> networkID,
-
426  ProtocolVersion protocol,
-
427  Application& app)
-
428 {
-
429  http_response_type resp;
-
430  resp.result(boost::beast::http::status::switching_protocols);
-
431  resp.version(req.version());
-
432  resp.insert("Connection", "Upgrade");
-
433  resp.insert("Upgrade", to_string(protocol));
-
434  resp.insert("Connect-As", "Peer");
-
435  resp.insert("Server", BuildInfo::getFullVersionString());
-
436  resp.insert("Crawl", crawlPublic ? "public" : "private");
-
437  resp.insert(
-
438  "X-Protocol-Ctl",
-
439  makeFeaturesResponseHeader(
-
440  req,
-
441  app.config().COMPRESSION,
-
442  app.config().LEDGER_REPLAY,
-
443  app.config().TX_REDUCE_RELAY_ENABLE,
-
444  app.config().VP_REDUCE_RELAY_ENABLE));
-
445 
-
446  buildHandshake(resp, sharedValue, networkID, public_ip, remote_ip, app);
-
447 
-
448  return resp;
-
449 }
-
450 
-
451 } // namespace ripple
+
394  http_request_type const& req,
+
395  beast::IP::Address public_ip,
+
396  beast::IP::Address remote_ip,
+
397  uint256 const& sharedValue,
+
398  std::optional<std::uint32_t> networkID,
+
399  ProtocolVersion protocol,
+
400  Application& app)
+
401 {
+
402  http_response_type resp;
+
403  resp.result(boost::beast::http::status::switching_protocols);
+
404  resp.version(req.version());
+
405  resp.insert("Connection", "Upgrade");
+
406  resp.insert("Upgrade", to_string(protocol));
+
407  resp.insert("Connect-As", "Peer");
+
408  resp.insert("Server", BuildInfo::getFullVersionString());
+
409  resp.insert("Crawl", crawlPublic ? "public" : "private");
+
410  resp.insert(
+
411  "X-Protocol-Ctl",
+
412  makeFeaturesResponseHeader(
+
413  req,
+
414  app.config().COMPRESSION,
+
415  app.config().LEDGER_REPLAY,
+
416  app.config().TX_REDUCE_RELAY_ENABLE,
+
417  app.config().VP_REDUCE_RELAY_ENABLE));
+
418 
+
419  buildHandshake(resp, sharedValue, networkID, public_ip, remote_ip, app);
+
420 
+
421  return resp;
+
422 }
+
423 
+
424 } // namespace ripple
ripple::hashLastMessage
static std::optional< base_uint< 512 > > hashLastMessage(SSL const *ssl, size_t(*get)(const SSL *, void *, size_t))
Hashes the latest finished message from an SSL stream.
Definition: Handshake.cpp:127
ripple::Application
Definition: Application.h:115
@@ -522,7 +495,6 @@ $(function() {
ripple::FEATURE_LEDGER_REPLAY
static constexpr char FEATURE_LEDGER_REPLAY[]
Definition: Handshake.h:148
ripple::toBase58
std::string toBase58(AccountID const &v)
Convert AccountID to base58 checked string.
Definition: AccountID.cpp:104
std::stringstream
STL class.
-
ripple::Application::signalStop
virtual void signalStop(std::string msg="")=0
ripple::makeSharedValue
std::optional< uint256 > makeSharedValue(stream_type &ssl, beast::Journal journal)
Computes a shared value based on the SSL connection state.
Definition: Handshake.cpp:145
ripple::Application::timeKeeper
virtual TimeKeeper & timeKeeper()=0
ripple::FEATURE_VPRR
static constexpr char FEATURE_VPRR[]
Definition: Handshake.h:144
@@ -577,8 +549,8 @@ $(function() {
ripple::Config::TX_REDUCE_RELAY_ENABLE
bool TX_REDUCE_RELAY_ENABLE
Definition: Config.h:245
ripple::verifyHandshake
PublicKey verifyHandshake(boost::beast::http::fields const &headers, ripple::uint256 const &sharedValue, std::optional< std::uint32_t > networkID, beast::IP::Address public_ip, beast::IP::Address remote, Application &app)
Validate header fields necessary for upgrading the link to the peer protocol.
Definition: Handshake.cpp:226
ripple::makeFeaturesResponseHeader
std::string makeFeaturesResponseHeader(http_request_type const &headers, bool comprEnabled, bool ledgerReplayEnabled, bool txReduceRelayEnabled, bool vpReduceRelayEnabled)
Make response header X-Protocol-Ctl value with supported features.
Definition: Handshake.cpp:93
-
ripple::makeRequest
auto makeRequest(bool crawlPublic, bool comprEnabled, bool ledgerReplayEnabled, bool txReduceRelayEnabled, bool vpReduceRelayEnabled) -> request_type
Make outbound http request.
Definition: Handshake.cpp:392
-
ripple::makeResponse
http_response_type makeResponse(bool crawlPublic, http_request_type const &req, beast::IP::Address public_ip, beast::IP::Address remote_ip, uint256 const &sharedValue, std::optional< std::uint32_t > networkID, ProtocolVersion protocol, Application &app)
Make http response.
Definition: Handshake.cpp:419
+
ripple::makeRequest
auto makeRequest(bool crawlPublic, bool comprEnabled, bool ledgerReplayEnabled, bool txReduceRelayEnabled, bool vpReduceRelayEnabled) -> request_type
Make outbound http request.
Definition: Handshake.cpp:365
+
ripple::makeResponse
http_response_type makeResponse(bool crawlPublic, http_request_type const &req, beast::IP::Address public_ip, beast::IP::Address remote_ip, uint256 const &sharedValue, std::optional< std::uint32_t > networkID, ProtocolVersion protocol, Application &app)
Make http response.
Definition: Handshake.cpp:392
beast::IP::is_unspecified
bool is_unspecified(Address const &addr)
Returns true if the address is unspecified.
Definition: IPAddress.h:59
ripple::http_request_type
boost::beast::http::request< boost::beast::http::dynamic_body > http_request_type
Definition: Handshake.h:47
beast::abstract_clock< NetClock >::time_point
typename NetClock ::time_point time_point
Definition: abstract_clock.h:63
diff --git a/Handshake_8h_source.html b/Handshake_8h_source.html index c91a10f641..5695a32fe2 100644 --- a/Handshake_8h_source.html +++ b/Handshake_8h_source.html @@ -258,8 +258,8 @@ $(function() {
optional
ripple::verifyHandshake
PublicKey verifyHandshake(boost::beast::http::fields const &headers, ripple::uint256 const &sharedValue, std::optional< std::uint32_t > networkID, beast::IP::Address public_ip, beast::IP::Address remote, Application &app)
Validate header fields necessary for upgrading the link to the peer protocol.
Definition: Handshake.cpp:226
ripple::makeFeaturesResponseHeader
std::string makeFeaturesResponseHeader(http_request_type const &headers, bool comprEnabled, bool ledgerReplayEnabled, bool txReduceRelayEnabled, bool vpReduceRelayEnabled)
Make response header X-Protocol-Ctl value with supported features.
Definition: Handshake.cpp:93
-
ripple::makeRequest
auto makeRequest(bool crawlPublic, bool comprEnabled, bool ledgerReplayEnabled, bool txReduceRelayEnabled, bool vpReduceRelayEnabled) -> request_type
Make outbound http request.
Definition: Handshake.cpp:392
-
ripple::makeResponse
http_response_type makeResponse(bool crawlPublic, http_request_type const &req, beast::IP::Address public_ip, beast::IP::Address remote_ip, uint256 const &sharedValue, std::optional< std::uint32_t > networkID, ProtocolVersion protocol, Application &app)
Make http response.
Definition: Handshake.cpp:419
+
ripple::makeRequest
auto makeRequest(bool crawlPublic, bool comprEnabled, bool ledgerReplayEnabled, bool txReduceRelayEnabled, bool vpReduceRelayEnabled) -> request_type
Make outbound http request.
Definition: Handshake.cpp:365
+
ripple::makeResponse
http_response_type makeResponse(bool crawlPublic, http_request_type const &req, beast::IP::Address public_ip, beast::IP::Address remote_ip, uint256 const &sharedValue, std::optional< std::uint32_t > networkID, ProtocolVersion protocol, Application &app)
Make http response.
Definition: Handshake.cpp:392
ripple::http_request_type
boost::beast::http::request< boost::beast::http::dynamic_body > http_request_type
Definition: Handshake.h:47
ripple::http_response_type
boost::beast::http::response< boost::beast::http::dynamic_body > http_response_type
Definition: Handshake.h:49
ripple::buildHandshake
void buildHandshake(boost::beast::http::fields &h, ripple::uint256 const &sharedValue, std::optional< std::uint32_t > networkID, beast::IP::Address public_ip, beast::IP::Address remote_ip, Application &app)
Insert fields headers necessary for upgrading the link to the peer protocol.
Definition: Handshake.cpp:177
diff --git a/LedgerData__test_8cpp_source.html b/LedgerData__test_8cpp_source.html index 2661ef270f..94cf7026b1 100644 --- a/LedgerData__test_8cpp_source.html +++ b/LedgerData__test_8cpp_source.html @@ -609,7 +609,7 @@ $(function() {
ripple::LedgerData_test::testLedgerType
void testLedgerType()
Definition: LedgerData_test.cpp:306
ripple::LedgerData_test::testMarkerFollow
void testMarkerFollow()
Definition: LedgerData_test.cpp:201
ripple::tfUniversal
constexpr std::uint32_t tfUniversal
Definition: TxFlags.h:57
-
ripple::makeRequest
auto makeRequest(bool crawlPublic, bool comprEnabled, bool ledgerReplayEnabled, bool txReduceRelayEnabled, bool vpReduceRelayEnabled) -> request_type
Make outbound http request.
Definition: Handshake.cpp:392
+
ripple::makeRequest
auto makeRequest(bool crawlPublic, bool comprEnabled, bool ledgerReplayEnabled, bool txReduceRelayEnabled, bool vpReduceRelayEnabled) -> request_type
Make outbound http request.
Definition: Handshake.cpp:365
ripple::strUnHex
std::optional< Blob > strUnHex(std::size_t strSize, Iterator begin, Iterator end)
Definition: StringUtilities.h:50
ripple::LedgerData_test::testCurrentLedgerToLimits
void testCurrentLedgerToLimits(bool asAdmin)
Definition: LedgerData_test.cpp:45
ripple::sfPublicKey
const SF_VL sfPublicKey
diff --git a/LedgerReplay__test_8cpp_source.html b/LedgerReplay__test_8cpp_source.html index 20dc211a0c..ea004998c4 100644 --- a/LedgerReplay__test_8cpp_source.html +++ b/LedgerReplay__test_8cpp_source.html @@ -1819,11 +1819,11 @@ $(function() {
ripple::test::LedgerReplay_test
Definition: LedgerReplay_test.cpp:40
ripple::test::LedgerReplayClient::waitForLedgers
bool waitForLedgers(uint256 const &finishLedgerHash, int totalReplay)
Definition: LedgerReplay_test.cpp:615
ripple::test::LedgerReplayerTimeout_test::testSkipListTimeout
void testSkipListTimeout()
Definition: LedgerReplay_test.cpp:1466
-
ripple::makeRequest
auto makeRequest(bool crawlPublic, bool comprEnabled, bool ledgerReplayEnabled, bool txReduceRelayEnabled, bool vpReduceRelayEnabled) -> request_type
Make outbound http request.
Definition: Handshake.cpp:392
+
ripple::makeRequest
auto makeRequest(bool crawlPublic, bool comprEnabled, bool ledgerReplayEnabled, bool txReduceRelayEnabled, bool vpReduceRelayEnabled) -> request_type
Make outbound http request.
Definition: Handshake.cpp:365
ripple::test::TestPeerSet::TestPeerSet
TestPeerSet(LedgerReplayMsgHandler &me, LedgerReplayMsgHandler &other, PeerSetBehavior bhvr, bool enableLedgerReplay)
Definition: LedgerReplay_test.cpp:330
ripple::test::PeerSetBehavior
PeerSetBehavior
Definition: LedgerReplay_test.cpp:313
ripple::test::PeerFeature
PeerFeature
Definition: LedgerReplay_test.cpp:181
-
ripple::makeResponse
http_response_type makeResponse(bool crawlPublic, http_request_type const &req, beast::IP::Address public_ip, beast::IP::Address remote_ip, uint256 const &sharedValue, std::optional< std::uint32_t > networkID, ProtocolVersion protocol, Application &app)
Make http response.
Definition: Handshake.cpp:419
+
ripple::makeResponse
http_response_type makeResponse(bool crawlPublic, http_request_type const &req, beast::IP::Address public_ip, beast::IP::Address remote_ip, uint256 const &sharedValue, std::optional< std::uint32_t > networkID, ProtocolVersion protocol, Application &app)
Make http response.
Definition: Handshake.cpp:392
ripple::test::PeerSetBehavior::DropSkipListReply
@ DropSkipListReply
ripple::test::LedgerReplayClient::inboundLedgers
MagicInboundLedgers inboundLedgers
Definition: LedgerReplay_test.cpp:813
ripple::http_request_type
boost::beast::http::request< boost::beast::http::dynamic_body > http_request_type
Definition: Handshake.h:47
diff --git a/PeerImp_8cpp_source.html b/PeerImp_8cpp_source.html index 19d7b918b7..0195bbca00 100644 --- a/PeerImp_8cpp_source.html +++ b/PeerImp_8cpp_source.html @@ -4107,7 +4107,7 @@ $(function() {
ripple::PeerImp::shardInfoMutex_
std::mutex shardInfoMutex_
Definition: PeerImp.h:168
ripple::Resource::Consumer::charge
Disposition charge(Charge const &fee)
Apply a load charge to the consumer.
Definition: Consumer.cpp:99
ripple::PeerImp::overlay_
OverlayImpl & overlay_
Definition: PeerImp.h:90
-
ripple::makeResponse
http_response_type makeResponse(bool crawlPublic, http_request_type const &req, beast::IP::Address public_ip, beast::IP::Address remote_ip, uint256 const &sharedValue, std::optional< std::uint32_t > networkID, ProtocolVersion protocol, Application &app)
Make http response.
Definition: Handshake.cpp:419
+
ripple::makeResponse
http_response_type makeResponse(bool crawlPublic, http_request_type const &req, beast::IP::Address public_ip, beast::IP::Address remote_ip, uint256 const &sharedValue, std::optional< std::uint32_t > networkID, ProtocolVersion protocol, Application &app)
Make http response.
Definition: Handshake.cpp:392
ripple::http_request_type
boost::beast::http::request< boost::beast::http::dynamic_body > http_request_type
Definition: Handshake.h:47
std::unique_ptr< stream_type >
ripple::Tuning::sendQueueLogFreq
@ sendQueueLogFreq
How often to log send queue size.
Definition: overlay/impl/Tuning.h:55
diff --git a/compression__test_8cpp_source.html b/compression__test_8cpp_source.html index 7d4f49152f..8cec510d1d 100644 --- a/compression__test_8cpp_source.html +++ b/compression__test_8cpp_source.html @@ -713,8 +713,8 @@ $(function() {
ripple::test::compression_test::testHandshake
void testHandshake()
Definition: compression_test.cpp:463
ripple::Serializer::getLength
int getLength() const
Definition: Serializer.h:199
ripple::sfDomain
const SF_VL sfDomain
-
ripple::makeRequest
auto makeRequest(bool crawlPublic, bool comprEnabled, bool ledgerReplayEnabled, bool txReduceRelayEnabled, bool vpReduceRelayEnabled) -> request_type
Make outbound http request.
Definition: Handshake.cpp:392
-
ripple::makeResponse
http_response_type makeResponse(bool crawlPublic, http_request_type const &req, beast::IP::Address public_ip, beast::IP::Address remote_ip, uint256 const &sharedValue, std::optional< std::uint32_t > networkID, ProtocolVersion protocol, Application &app)
Make http response.
Definition: Handshake.cpp:419
+
ripple::makeRequest
auto makeRequest(bool crawlPublic, bool comprEnabled, bool ledgerReplayEnabled, bool txReduceRelayEnabled, bool vpReduceRelayEnabled) -> request_type
Make outbound http request.
Definition: Handshake.cpp:365
+
ripple::makeResponse
http_response_type makeResponse(bool crawlPublic, http_request_type const &req, beast::IP::Address public_ip, beast::IP::Address remote_ip, uint256 const &sharedValue, std::optional< std::uint32_t > networkID, ProtocolVersion protocol, Application &app)
Make http response.
Definition: Handshake.cpp:392
ripple::http_request_type
boost::beast::http::request< boost::beast::http::dynamic_body > http_request_type
Definition: Handshake.h:47
ripple::strUnHex
std::optional< Blob > strUnHex(std::size_t strSize, Iterator begin, Iterator end)
Definition: StringUtilities.h:50
std::vector::data
T data(T... args)
diff --git a/namespaceripple.html b/namespaceripple.html index 3158ca99be..3e739ef007 100644 --- a/namespaceripple.html +++ b/namespaceripple.html @@ -25727,7 +25727,7 @@ template<class Clock , class Duration , class Rep , class Period >
Returns
http request with empty body
-

Definition at line 392 of file Handshake.cpp.

+

Definition at line 365 of file Handshake.cpp.

@@ -25809,7 +25809,7 @@ template<class Clock , class Duration , class Rep , class Period >
Returns
http response
-

Definition at line 419 of file Handshake.cpp.

+

Definition at line 392 of file Handshake.cpp.

diff --git a/reduce__relay__test_8cpp_source.html b/reduce__relay__test_8cpp_source.html index a86e2f5224..1b11781127 100644 --- a/reduce__relay__test_8cpp_source.html +++ b/reduce__relay__test_8cpp_source.html @@ -1840,9 +1840,9 @@ $(function() {
ripple::test::reduce_relay_test::State
State
Definition: reduce_relay_test.cpp:915
ripple::test::reduce_relay_test::Handler::unsquelch
void unsquelch(PublicKey const &, Peer::id_t) const override
Unsquelch handler.
Definition: reduce_relay_test.cpp:1403
ripple::test::Validator::resetId
static void resetId()
Definition: reduce_relay_test.cpp:341
-
ripple::makeRequest
auto makeRequest(bool crawlPublic, bool comprEnabled, bool ledgerReplayEnabled, bool txReduceRelayEnabled, bool vpReduceRelayEnabled) -> request_type
Make outbound http request.
Definition: Handshake.cpp:392
+
ripple::makeRequest
auto makeRequest(bool crawlPublic, bool comprEnabled, bool ledgerReplayEnabled, bool txReduceRelayEnabled, bool vpReduceRelayEnabled) -> request_type
Make outbound http request.
Definition: Handshake.cpp:365
ripple::test::reduce_relay_test::Handler::maxDuration_
int maxDuration_
Definition: reduce_relay_test.cpp:1406
-
ripple::makeResponse
http_response_type makeResponse(bool crawlPublic, http_request_type const &req, beast::IP::Address public_ip, beast::IP::Address remote_ip, uint256 const &sharedValue, std::optional< std::uint32_t > networkID, ProtocolVersion protocol, Application &app)
Make http response.
Definition: Handshake.cpp:419
+
ripple::makeResponse
http_response_type makeResponse(bool crawlPublic, http_request_type const &req, beast::IP::Address public_ip, beast::IP::Address remote_ip, uint256 const &sharedValue, std::optional< std::uint32_t > networkID, ProtocolVersion protocol, Application &app)
Make http response.
Definition: Handshake.cpp:392
ripple::test::Validator::for_links
void for_links(std::vector< Peer::id_t > peers, LinkIterCB f)
Definition: reduce_relay_test.cpp:371
ripple::http_request_type
boost::beast::http::request< boost::beast::http::dynamic_body > http_request_type
Definition: Handshake.h:47
std::shuffle
T shuffle(T... args)