Commit Graph

  • 8b659a6d32 Add workaround/noexcept.h for visual studio Vinnie Falco 2014-03-18 16:53:17 -07:00
  • f1462de729 Add workaround/noexcept.h for visual studio Vinnie Falco 2014-03-18 16:53:17 -07:00
  • 18486169b3 Change to the treatment of BeastConfig.h * No longer requires its own compiler include path * Includes use relative paths to locate the file * Client applications include the file themselves * Inclusion of BeastConfig.h can be controlled via preprocessor directive Vinnie Falco 2014-03-17 18:20:31 -07:00
  • 3cb3e5273f Change to the treatment of BeastConfig.h * No longer requires its own compiler include path * Includes use relative paths to locate the file * Client applications include the file themselves * Inclusion of BeastConfig.h can be controlled via preprocessor directive Vinnie Falco 2014-03-17 18:20:31 -07:00
  • d580e7c694 General tidy and refactoring: * Use nullptr (C++11) instead of NULL. * Put each file into its own namespace declaration. * Remove "using namespace" directives and add scope qualifiers. * Control when beast's implementation of std::equal (C++14) is used. * Tidy up some const declarations. Howard Hinnant 2014-03-07 18:54:11 -05:00
  • cad50c68a8 General tidy and refactoring: * Use nullptr (C++11) instead of NULL. * Put each file into its own namespace declaration. * Remove "using namespace" directives and add scope qualifiers. * Control when beast's implementation of std::equal (C++14) is used. * Tidy up some const declarations. Howard Hinnant 2014-03-07 18:54:11 -05:00
  • 78ec5ccdbc Restructure joyent message parser (from Node.js): * New http::raw_parser wrapper * Convert parser errors to error_code * Enumeration and strings for parsed HTTP method * Move parser engine into joyent namespace * Rename includes to be distinct Vinnie Falco 2014-03-19 09:24:51 -07:00
  • c581ffb8a4 Restructure joyent message parser (from Node.js): * New http::raw_parser wrapper * Convert parser errors to error_code * Enumeration and strings for parsed HTTP method * Move parser engine into joyent namespace * Rename includes to be distinct Vinnie Falco 2014-03-19 09:24:51 -07:00
  • d4a5c0353d beast, beast::asio improvements and fixes: * New maybe_const_t alias for maybe_const * New asio::enable_wait_for_async for safe cleanup * New asio::memory_buffer, a managed boost::asio compatible buffer * shared_handler improvements: - Can be 'empty' (no stored handler). - Default constructible as 'empty'. - Safe evaluation in bool contexts, false==empty * Fix is_call_possible metafunction: - Works on empty argument lists - Works with reference types * Replace SafeBool idiom with C++11 explicit operator bool * Move IPAddress function definitions to the header * Move cyclic_iterator to container/ * Remove unused BufferType * Remove obsolete classes: - NamedPipe - ReadWriteLock - ScopedReadLock - ScopedWriteLock - LockGuard Vinnie Falco 2014-03-16 20:32:14 -07:00
  • 556778dbdb beast, beast::asio improvements and fixes: * New maybe_const_t alias for maybe_const * New asio::enable_wait_for_async for safe cleanup * New asio::memory_buffer, a managed boost::asio compatible buffer * shared_handler improvements: - Can be 'empty' (no stored handler). - Default constructible as 'empty'. - Safe evaluation in bool contexts, false==empty * Fix is_call_possible metafunction: - Works on empty argument lists - Works with reference types * Replace SafeBool idiom with C++11 explicit operator bool * Move IPAddress function definitions to the header * Move cyclic_iterator to container/ * Remove unused BufferType * Remove obsolete classes: - NamedPipe - ReadWriteLock - ScopedReadLock - ScopedWriteLock - LockGuard Vinnie Falco 2014-03-16 20:32:14 -07:00
  • 816fab000d Fix SConstruct compiler arguments Vinnie Falco 2014-03-17 14:49:31 -07:00
  • 66d1dd6f81 Build system improvements: Nik Bougalis 2014-03-14 15:33:31 -07:00
  • 3eae68fc34 Remove obsolete support scripts Vinnie Falco 2014-03-15 06:07:43 -07:00
  • 8545aee4c7 Better diagnostics for SSL certificate failures Vinnie Falco 2014-03-14 16:20:34 -07:00
  • 29a4f61551 Set version to 0.23.0 Vinnie Falco 2014-03-14 13:01:23 -07:00
  • 6546c30e17 Refactor beast::asio: * New tools for completion handlers: - wrap_handler provides composed io_service execution guarantees. - bind_handler rebinds arguments to handlers. - shared_handler type-erases any completion handler. - buffer_sequence type-erases templated BufferSequences - abstract_socket replaces Socket - socket_wrapper replaces SocketWrapper - beast::asio placeholders to work with std::bind Vinnie Falco 2014-03-07 20:06:12 -08:00
  • c2fd1215f5 Refactor beast::asio: * New tools for completion handlers: - wrap_handler provides composed io_service execution guarantees. - bind_handler rebinds arguments to handlers. - shared_handler type-erases any completion handler. - buffer_sequence type-erases templated BufferSequences - abstract_socket replaces Socket - socket_wrapper replaces SocketWrapper - beast::asio placeholders to work with std::bind Vinnie Falco 2014-03-07 20:06:12 -08:00
  • 5478c540cb Add std::integer_sequence C++14 compatibility Vinnie Falco 2014-03-10 11:55:53 -04:00
  • e3c1375f36 Add std::integer_sequence C++14 compatibility Vinnie Falco 2014-03-10 11:55:53 -04:00
  • 4e357601ec Move MultiSocket, RippleSSLContext to common module Vinnie Falco 2014-03-02 08:26:30 -08:00
  • 3674b01634 Add ripple::byte_view, ripple::const_byte_view Vinnie Falco 2014-03-12 01:04:47 -07:00
  • b5d81f4f92 Add beast::buffer_view Vinnie Falco 2014-03-11 23:24:34 -07:00
  • f66aee4e7f Add beast::buffer_view Vinnie Falco 2014-03-11 23:24:34 -07:00
  • 2a99a8350f Add C++11 noexcept compatibility for VS2013 Vinnie Falco 2014-03-12 15:36:23 -07:00
  • b2f06dbe3c Add C++11 noexcept compatibility for VS2013 Vinnie Falco 2014-03-12 15:36:23 -07:00
  • b78076670e Fix typos: tecMASTER_DISABLED, tecNO_REGULAR_KEY sublimator 2014-03-14 11:11:24 +07:00
  • a08a0703b6 Remove Jenkins CI build status badge sublimator 2014-03-01 13:23:56 +07:00
  • f80561e6aa Travis: disable gdb thread event logging sublimator 2014-03-12 22:54:56 +07:00
  • 028935a254 Handle unexpected relative paths from __FILE__ Fixes comref#RIPD-133 JoelKatz 2014-03-13 16:48:33 -07:00
  • f5765b71f2 Handle unexpected relative paths from __FILE__ Fixes comref#RIPD-133 JoelKatz 2014-03-13 16:48:33 -07:00
  • 6a6be847c0 Set version to 0.23.0-rc1 Vinnie Falco 2014-03-12 19:05:08 -07:00
  • 4e26108a06 Protect callers of MultiSocket::remote_endpoint from exceptions Nik Bougalis 2014-03-12 13:50:43 -07:00
  • c517d261bb Return a sensible error for unknown inner JSON fields JoelKatz 2014-03-12 00:45:43 -07:00
  • 5522a23670 Don't relay old proposals. JoelKatz 2014-03-11 22:18:13 -07:00
  • 64345f90a8 Allow setting LedgerConsensus to TRACE JoelKatz 2014-03-11 22:01:36 -07:00
  • 879c0d6b78 Be less promiscuous relaying proposals JoelKatz 2014-03-11 20:29:38 -07:00
  • 2e8df429df Expose PeerImp::start instead of requiring the use of accept/connect Nik Bougalis 2014-03-11 18:28:32 -07:00
  • 7aa1222310 Fix the "peer action" transition from syncing to full JoelKatz 2014-03-11 05:15:56 -07:00
  • 2b5142ee4d Make transaction forwarding less promiscuous JoelKatz 2014-03-11 03:28:12 -07:00
  • e8d7d339ef Transactor refactoring: Nik Bougalis 2014-03-03 22:25:39 -08:00
  • 5324a6d59d Don't create a Transactor if we don't have a valid TxID Nik Bougalis 2014-03-04 13:09:25 -08:00
  • 569b3a46a1 Cleanups: Nik Bougalis 2014-03-03 13:37:08 -08:00
  • fc129e43fd Cleanup handling of expired offers JoelKatz 2014-03-10 23:59:37 -07:00
  • b22a0f4a97 Ensure offer cleanup is deterministic JoelKatz 2014-03-11 01:11:45 -07:00
  • cf63b5c859 Fix logging transactions that throw JoelKatz 2014-03-09 13:13:50 -07:00
  • b4593a274d Limit how many reads we defer to avoid overflowing the cache David Schwartz 2014-03-07 14:15:04 -08:00
  • 163daf012a Add 'MemoData' field David Schwartz 2014-03-07 13:34:53 -08:00
  • 63df034bcf Clean up job renaming JoelKatz 2014-03-08 12:16:33 -08:00
  • 60787be80c Check the node store for transaction nodes with metadata David Schwartz 2014-03-07 10:36:39 -08:00
  • f42ae3af21 Add ledger_data command to get full ledgers in pieces David Schwartz 2014-03-06 13:57:08 -08:00
  • b1fea3c51e Disable retrieving full state trees for non-admins. David Schwartz 2014-03-06 12:56:08 -08:00
  • 16d2bbd6e5 Avoid disk I/O when data 'moves' in a SHAMap David Schwartz 2014-03-05 11:41:32 -08:00
  • 2505a908c5 Logging reduction in PeerImp David Schwartz 2014-03-05 11:39:15 -08:00
  • 4b71673ee9 Improve validation of JSON inputs Nik Bougalis 2014-03-06 21:15:55 -08:00
  • 242494a9ad Allow a server to keep no ledger history, closes #299 Nik Bougalis 2014-03-06 15:12:39 -08:00
  • 3a684ce280 Robust HashPrefix initialization, closes #300 Nik Bougalis 2014-03-06 14:20:00 -08:00
  • 756da7b844 Fix strUnHex parsing of odd-length strings and add unit tests Nik Bougalis 2014-03-06 04:55:09 -08:00
  • 9c465487ae Cache the result of remote_endpoint at connect/accept time and use it Nik Bougalis 2014-03-05 12:57:15 -08:00
  • e8002a7a62 Fix ledger log warning, closes #298 Donovan Hide 2014-03-05 10:42:39 -08:00
  • 5a53b48026 Require a C++11 conforming compiler Nik Bougalis 2014-03-05 10:59:08 -08:00
  • 6df466c692 Update http code for http parser API changes Vinnie Falco 2014-03-06 21:44:29 -08:00
  • b3f725d9fd Update http code for http parser API changes Vinnie Falco 2014-03-06 21:44:29 -08:00
  • 956f2b98b8 Merge commit '6c0edd2190bfd18ffc523f486367da3724cf98a3' into develop Vinnie Falco 2014-03-06 21:22:22 -08:00
  • 50f5d5bdf3 Merge commit '6c0edd2190bfd18ffc523f486367da3724cf98a3' into develop Vinnie Falco 2014-03-06 21:22:22 -08:00
  • 6c0edd2190 Squashed 'src/beast/beast/http/impl/http-parser/' changes from 547553b..cba704c Vinnie Falco 2014-03-06 21:22:22 -08:00
  • d9a0181189 Set version to 0.22.0 Vinnie Falco 2014-03-04 10:51:13 -08:00
  • 4e3dcd1ce6 Fix beast::asio failures on OS X. There are 38 unittest failures on OS X. These changes address all of them by adjusting which side of the socket (send or receive) gets shut down. In each case, the failure was 'Socket is not connected'. I've interpreted that to mean that the other thread had already shut down its side of the connection. Howard Hinnant 2014-03-04 14:56:48 -05:00
  • 09570996a9 Fix beast::asio failures on OS X. There are 38 unittest failures on OS X. These changes address all of them by adjusting which side of the socket (send or receive) gets shut down. In each case, the failure was 'Socket is not connected'. I've interpreted that to mean that the other thread had already shut down its side of the connection. Howard Hinnant 2014-03-04 14:56:48 -05:00
  • adc4c855ca Fix the ledger range we advertise to peers JoelKatz 2014-03-04 13:13:35 -08:00
  • 8b1df06a94 PeerFinder fixes: * Fix local advertisement (was missing) * Fix Livecache histogram display * If no [ips] are specified, use r.ripple.com * Use different backing stores for PeerFinder and Validator databases Nik Bougalis 2014-03-03 18:31:55 -08:00
  • a690690b53 Remove unused TextDiff Vinnie Falco 2014-03-03 18:50:56 -08:00
  • 7c81eec30c Remove unused TextDiff Vinnie Falco 2014-03-03 18:50:56 -08:00
  • b9d0bf8822 Consolidate C++14 compatibility into new headers Vinnie Falco 2014-03-03 13:37:07 -08:00
  • faa999d6d0 Consolidate C++14 compatibility into new headers Vinnie Falco 2014-03-03 13:37:07 -08:00
  • 370bfb7a22 Permit memos up to 1Kb. * Overlong memos are basically treated like invalid signatures. * Ability to clear message key. David Schwartz 2014-02-19 15:28:43 -08:00
  • ae649ec917 Signature canonicalization and transaction mutation fixes David Schwartz 2014-02-18 18:37:55 -08:00
  • 93b44fcdc1 Return an empty pointer from getLedgerBySeq if sequence in future JoelKatz 2014-03-03 14:04:35 -08:00
  • 1fe57720c4 Legacy Pathfinding API improvements: * Use the cache for source/dest currencies * Allow a search depth and initial paths to be specified in old pathfinding David Schwartz 2014-02-19 14:56:09 -08:00
  • fca8fa1b1b Clean up ledger fetch reasons. Don't trigger immediately when fetching historical ledgers. JoelKatz 2014-02-24 17:11:11 -08:00
  • 81082ad10f Don't check the node store for proposed txn nodes David Schwartz 2014-02-26 13:59:35 -08:00
  • 2c515636cb Release the InboundLedger lock during getMissingNodes David Schwartz 2014-02-26 13:29:10 -08:00
  • 2f7ac98e34 Improve I/O when fetching ledgers * negative cache for node store * async fetch, thread pool for node store * read barrier logic for node store * SHAMap getMissingNodesNB (non-blocking) * non-blocking getMissingNodes traverse * tune caches David Schwartz 2014-02-20 09:30:21 -08:00
  • 37b39ed1a1 Update LICENSE Nik Bougalis 2014-02-28 21:28:40 -08:00
  • 73485d5a23 Resolve hostnames found in the [ips] config section Nik Bougalis 2014-02-28 13:42:07 -08:00
  • 28c7827f14 Calculate program file directories: * Determine location of database files in Config * Inject database directory or file path in PeerFinder and Validators * PeerFinder and Validators will share the same sqlite file Nik Bougalis 2014-02-28 09:19:37 -08:00
  • e055dc1513 WebSocket dispatch changes. Don't let one connection hold a thread for too long without having to wait for another turn JoelKatz 2014-02-28 11:41:06 -08:00
  • c173f14fc0 Give pathfinding updates priority over client and RPC requests JoelKatz 2014-02-28 11:39:01 -08:00
  • bb02112752 Fix clang warnings Howard Hinnant 2014-02-25 15:49:27 -05:00
  • cd30e552a7 Fix clang warnings Howard Hinnant 2014-02-25 15:49:27 -05:00
  • 8eddcfd3d5 Remove unused classes Vinnie Falco 2014-02-27 20:12:52 -08:00
  • 9bf1a76e91 Remove unused classes Vinnie Falco 2014-02-27 20:12:52 -08:00
  • 2957b688fd PeerFinder and Peers fixes: - Fix bootcache incorrect failure on socket cancel - Fix peer connect race on stop - Simplify some loops - Require boost 1.55 via static_assert Vinnie Falco 2014-02-27 18:33:49 -08:00
  • add40d524f Merge pull request #296 from nbougalis/quickfix-jobcount JoelKatz 2014-02-26 14:38:51 -08:00
  • 04a55e35b6 Fix variable mismatch for job counts Nik Bougalis 2014-02-26 14:28:40 -08:00
  • 955ce45448 Fix the assert on a self-connect JoelKatz 2014-02-24 22:30:04 -08:00
  • 78e1995365 New utility classes, containers, C++14 compatibility, and fixes: * Add std::equal_to <void> (since C++14) * Add heterogeneous std::equal (since C++14) * Add maybe_const * Add empty_base_optimization * Add is_constructible specialization for pair, tuple * Add aged associative containers: - aged_set, aged_map, aged_multiset, aged_multimap - aged_unordered_set, aged_unordered_map, - aged_unordered_multiset, aged_unordered_multimap * Fix auto keyword pass by reference * Fix basic_seconds_clock warning and project file Vinnie Falco 2014-02-16 19:43:16 -08:00
  • 995e64a205 PeerFinder fixes: * Fix split horizon using recent address cache * Change message tuning parameters to reduce dead messages * Improved peer handout algorithm for addresses * Improved handout algorithm for redirects * Improved selection algorithm for autoconnect * Faster autoconnection strategy * Consolidate deadline timers * Send empty endpoints message as a socket ping * Fix hop count adjustments for live cache filtering * Remove broken Peer::isConnected function * Optimized Livecache for handouts * Optimized Bootcache for handouts * Remove uptime metric from Bootcache entries * Add histogram to Livecache print output Vinnie Falco 2014-02-15 08:27:02 -08:00
  • bf085f0ef3 New utility classes, containers, C++14 compatibility, and fixes: * Add std::equal_to <void> (since C++14) * Add heterogeneous std::equal (since C++14) * Add maybe_const * Add empty_base_optimization * Add is_constructible specialization for pair, tuple * Add aged associative containers: - aged_set, aged_map, aged_multiset, aged_multimap - aged_unordered_set, aged_unordered_map, - aged_unordered_multiset, aged_unordered_multimap * Fix auto keyword pass by reference * Fix basic_seconds_clock warning and project file Vinnie Falco 2014-02-16 19:43:16 -08:00
  • 1374b37882 Remove dead serializer signature code David Schwartz 2014-02-18 18:37:50 -08:00
  • e275f4eb9d Handle a removed peer when counting ledger use JoelKatz 2014-02-21 23:31:04 -08:00