Vinnie Falco
fa11071443
Enable asynchronous handling of HTTP-RPC (RIPD-390)
...
* Activate async code path
* Tidy up HTTP server code
* Use shared_ptr in HTTP server
* Remove check for unspecified IP
* Remove hairtrigger
* Fix missing HTTP authorization check
* Fix multisocket flags in RPC-HTTP server
* Fix authorization failure when no credentials required
* Addresses RIPD-159, RIPD-161, RIPD-390
2014-07-24 20:22:55 -07:00
Vinnie Falco
506910147f
Tidy up includes:
...
* Replace boost with std equivalents:
- bind, ref, cref, function, placeholders
* More "include what you use"
* Remove unnecessary includes
2014-06-15 18:26:50 -07:00
Vinnie Falco
4f1d1d2a8a
Reorganize source file hierarchy:
...
* Rename unity files
* Move some modules to new subdirectories
* Remove obsolete Visual Studio project files
* Remove obsolete coding style and TODO list
2014-06-03 21:43:59 -07:00
Vinnie Falco
560071bb68
Make all include paths relative to a root directory:
...
* Better include path support in the VSProject scons tool.
* Various manual fixes to include paths.
2014-06-02 09:16:28 -07:00
Vinnie Falco
eb122f45f9
Tidy up includes
2014-05-28 07:29:59 -07:00
Vinnie Falco
b2d97703c6
beast cleanup and tidying:
...
* Replace custom types with C++11 <cstdint> types
* Fix sqlite integer intos and uses
* Fix String implicit integer constructors
* Escape the enclosing namespace in sqdb
* Replace contract checks with assert
* Make many header files compile independently
* Remove the dependence on beast_core.h in many places
* Remove unused or obsolete classes and functions
* Remove unused or obsolete macros
* Remove unused network functions and files
* Remove unused or obsolete classes:
- ChildProcess
- HighResolutionTimer
- InterProcessLock
- Throw
- TrackedMutex
- UntrackedMutex
- XmlDocument
- XmlElement
2014-03-23 15:23:55 -07:00
Howard Hinnant
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.
Conflicts:
src/ripple_app/shamap/SHAMapSync.cpp
src/ripple_app/tx/TransactionEngine.cpp
2014-03-19 13:42:01 -07:00
Vinnie Falco
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
* Removed obsolete classes and functions
- AbstractHandler
- ComposedAsyncOperation
- SharedFunction
- SharedHandler
- SharedHandlerAllocator
- SharedHandlerPtr
- SharedHandlerType
- SocketBase
- SocketWrapperStrand
- wrapHandler
* Refactored classes to use new tools
- abstract_socket
- socket_wrapper
- HandshakeDetector
- HttpClientType
* Miscellanous tidying
- socket classes moved to beast::asio namespace
- beast asio files provide their own namespace declaration.
- Fix IsCallPossible conflicting template parameter name
- Use <boost/get_pointer.hpp> for C++11 compatibility.
- Remove extraneous include path from build environment.
2014-03-14 08:03:48 -07:00
Vinnie Falco
4e357601ec
Move MultiSocket, RippleSSLContext to common module
2014-03-14 07:57:20 -07:00
Vinnie Falco
a336cc26f9
Remove deprecated IPAddress
2014-02-22 21:33:00 -08:00
Nik Bougalis
e60b28980a
PeerFinder work and refactoring:
...
* Implement PeerFinder business logic.
* Support fixed peers (including DNS support).
* Add journal support to Peer and Peers.
* Refactor PeerDoor support.
* Tidy up Peers and eliminate connection functionality and timers.
* Refactor Peer interface and add journal support.
* Allow construction of incoming Peer using an existing socket.
* Remove TESTNET support.
* Allow connections from/to cluster peers without consuming slots
* Misc. cleanups.
2014-02-05 15:56:04 -08:00
Vinnie Falco
087301933a
General refactoring, using C++11
...
* Remove broken RecycledObjectPool
* Fix beast::ServiceQueue using List instead of LockFreeStack
* Add class semaphore, fixes broken Semaphore
* Move crytpo module files to new beast directory
* Use c++11 replacements for boost and beast types:
- std::atomic instead of beast::Atomic
- std::function instead of boost::function, beast::function
- std::unique_ptr instead of beast::ScopedPointer
- std::shared_ptr instead of boost::shared_ptr
* Remove modules:
- beast_db
- beast_crypto
- beast_extras
* Remove unnecessary classes:
- AbstractFifo
- AddConst
- AtomicCounter
- AtomicFlag
- AtomicPointer
- AtomicState
- CopyConst
- Expression
- ForwardList
- IfCond
- Interval
- IntrusiveArray
- KeyvaDB
- PointerToOther
- PointerTraits
- RemoveConst
- RemoveConstVolatile
- RemoveReference
- RemoveVolatile
- SharedObjectArray
- SingleThreadedSharedObject
- SophiaDB factory
- SortedSet
- WeakReference
- beast::unique_ptr
2014-01-07 15:57:45 -08:00
Vinnie Falco
130c7c5c58
Refactor and fix some object arithmetic comparisons
2013-11-30 06:28:29 -08:00
Vinnie Falco
b660d82516
Make TxFormats a Meyers singleton
2013-11-20 10:16:46 -08:00
Vinnie Falco
a05f33f6a7
Add annotation and clean up whitespace
2013-11-12 19:30:07 -08:00
Vinnie Falco
2427cce2c8
Rename to IPAddress and remove unused files
2013-10-22 10:43:16 -07:00
Vinnie Falco
7d089561c3
Add Request and Response HTTP parsers
2013-10-04 14:33:55 -07:00
Vinnie Falco
53f8e73b65
Refactor net buffers classes
2013-10-04 14:33:55 -07:00
Vinnie Falco
c5f017739d
Add SharedData::ConstAccess
2013-09-28 15:09:08 -07:00
Vinnie Falco
0048efea8d
Fixes for FreeBSD
2013-09-27 07:16:57 -07:00
Vinnie Falco
fcd689afbf
Update copyright notice and licenses
2013-09-25 17:27:06 -07:00
Vinnie Falco
e04dbdde19
Tidy up HTTPServer API and handle errors
2013-09-22 13:27:24 -07:00
Vinnie Falco
b123b1a849
Fix using namespace beast directives
2013-09-22 13:22:07 -07:00
Vinnie Falco
d16aa7f928
Use JobQueue to process RPC-JSON asynchronously
2013-09-22 13:22:06 -07:00
Vinnie Falco
a2151bfa47
Split HTTP::Server to its own module
2013-09-22 11:52:26 -07:00