Commit graph

761 commits

Author SHA1 Message Date
Eric Frias
21045dde5f Add an option to the websocket server constructor to allow disabling deflate
compression.  Refactored the code to remove duplication between tls/non-tls
versions of the server, which appear to have been cut & paste copies of
one another that had diverged slightly.  This makes some of the fixes to
the non-tls server available in the tls server.
cryptonomex/graphene#619
2016-03-10 17:22:28 -05:00
theoreticalbts
38419164b6 optional.hpp: Allow easy access to contained type 2016-02-26 14:26:58 -05:00
Eric Frias
fa2b8fd4d2 Merge branch 'cryptonomex_master'
# Conflicts:
#	src/network/http/websocket.cpp
2016-02-26 11:16:10 -05:00
theoreticalbts
232d59525a raw.hpp: Use fc::raw:: namespace explicitly everywhere, cleanup whitespace 2016-02-19 16:36:29 -05:00
Daniel Larimer
bde8a7f424 fixes updates for deque to variant 2016-02-11 17:16:39 -05:00
Daniel Larimer
7840ef16e9 adding rshift 2016-02-04 16:32:13 -05:00
Daniel Larimer
4438c8aa80 fix include dependency and redundancy of to_variant 2016-02-02 13:36:48 -05:00
Daniel Larimer
845f8388c4 add deque support to variant 2016-02-01 18:29:30 -05:00
theoreticalbts
8eec508b8c iostream.hpp: Add get(char&) override to allow unpack(fc::istream, unsigned_int) 2016-01-08 11:20:38 -05:00
theoreticalbts
7b6431f20e raw.hpp: Add pack() override for shared_ptr<T> 2016-01-08 11:20:32 -05:00
Daniel Larimer
cb27b810e3 adding support for unpacking shared_ptr 2015-11-25 12:49:49 -05:00
theoreticalbts
1e10d3dc47 raw.hpp: Require high bits to be 0 when unpacking bool 2015-10-12 10:09:08 -04:00
Daniel Larimer
6495004302 move potential yields outside of catch 2015-10-09 17:08:03 -04:00
Eric Frias
f9e3f0c4e6 Merge branch 'github_master' 2015-10-06 17:02:25 -04:00
Daniel Larimer
7e32df4978 Merge pull request #46 from pmconrad/blinding
Blinding a la Oleg Andreev
2015-10-01 09:55:28 -04:00
Eric Frias
008dafe7d0 Merge branch 'github_master'
Conflicts:
	src/asio.cpp
	src/network/http/websocket.cpp
2015-09-18 16:03:34 -04:00
Daniel Larimer
483b348878 Merge branch 'master' of https://github.com/cryptonomex/fc 2015-09-11 08:55:02 -04:00
Daniel Larimer
99e1c1fd52 fix warnings 2015-09-11 08:54:51 -04:00
theoreticalbts
80d967a70d variant_object: Implement operator() overload to copy a variant_object 2015-08-28 22:14:27 -04:00
theoreticalbts
cb006ba03c api_connection.hpp: Possibly fix previous commit, see https://github.com/cryptonomex/graphene/issues/232 2015-08-12 13:45:33 -04:00
Eric Frias
ebf42fbbd4 Allow serializing std::maps that use non-standard comparison functions 2015-08-10 18:21:56 -04:00
theoreticalbts
3cd9ed4386 api_connection.hpp: Properly lock connection object for callbacks 2015-08-10 15:17:21 -04:00
theoreticalbts
c16bb206a3 fstream: Implement read_file_contents 2015-08-06 14:47:15 -04:00
Eric Frias
87a2513981 Remove some unused asio completion functions 2015-08-04 10:39:04 -04:00
Eric Frias
556f45fcbf Add missing ddump() macro 2015-08-04 10:24:31 -04:00
Peter Conrad
e3fc463efc Initialize openssl properly, use ssl wrapper types instead of ..._free, unify DH_check 2015-07-30 17:43:43 +02:00
Peter Conrad
ef92e68146 Created + added test vectors, various fixes - working! 2015-07-29 21:00:08 +02:00
Peter Conrad
622de81402 Added tests, fixes (sig format, canonicalization) 2015-07-29 21:00:08 +02:00
Peter Conrad
56e98e136a Initial blinding implementation, untested 2015-07-29 21:00:08 +02:00
Peter Conrad
5ecdcba4b6 Some refactoring 2015-07-29 21:00:08 +02:00
Peter Conrad
0f67ca751e Implemented extended keys 2015-07-29 20:59:32 +02:00
Peter Conrad
0575840a9c Implemented HMAC template + test 2015-07-29 20:58:44 +02:00
theoreticalbts
d11b48a015 exception.hpp: Implement exception constructors for const log_messages& 2015-07-28 17:01:59 -04:00
Daniel Larimer
e9eeb3300c adding tab completion to CLI 2015-07-27 09:11:20 -04:00
Daniel Larimer
d76a15ec89 adding child key derivation for ecc keys 2015-07-23 18:45:35 -04:00
Daniel Larimer
7fc2cc43f1 Adding multi_index to/from variant support 2015-07-23 13:16:19 -04:00
Eric Frias
55111ebbb5 Merge branch 'github_master' 2015-07-14 13:32:58 -04:00
Eric Frias
2593760687 Add overloads for comparing safe<T> with T 2015-07-14 10:45:36 -04:00
theoreticalbts
5f43c06bae uint128: Implement popcount() 2015-07-13 17:01:11 -04:00
Vikram Rajkumar
0391665471 Fix and cleanup safe spec; cryptonomex/graphene#10 2015-07-13 14:28:44 -04:00
Eric Frias
1e6176911a Fix bugs in http request when using chunked content encoding.
Add missing support for parsing/reconstructing URLs with query strings
to fc::url.
Add md5 hash algorithm.
2015-07-10 10:07:14 -04:00
Daniel Larimer
2ef7583f90 adding missing smart_ref files 2015-07-09 13:39:55 -04:00
Daniel Larimer
935e90c1ec fix bug with optional that resulted in 8x more memory than necessary being reserved 2015-07-09 13:39:20 -04:00
Daniel Larimer
8d13f292b8 Merge branch 'master' of https://github.com/cryptonomex/fc 2015-07-08 16:43:29 -04:00
Daniel Larimer
63677c47d9 helper for smart_ref 2015-07-08 16:43:25 -04:00
theoreticalbts
787e4abf3f exception.hpp: Allow enable/disable assert trip notifications with only one dirty file 2015-07-07 21:50:26 -04:00
theoreticalbts
46d85a3462 exception.hpp: Add assert_trip debug logging for exceptions 2015-07-07 21:49:42 -04:00
Daniel Larimer
e2e0f38dc6 Merge branch 'master' of https://github.com/cryptonomex/fc 2015-07-07 18:30:49 -04:00
Daniel Larimer
7c3260e965 Made static variants compareable based upon type. 2015-07-07 18:30:18 -04:00
Scott Howard
153d3f0433
Fix cryptonomex/graphene#107: Define char as signed when comparing against EOF 2015-07-05 15:44:32 -04:00
theoreticalbts
443544be4f bitutil.h: Implement endian reversal inline functions 2015-07-02 15:24:02 -04:00
Eric Frias
d462be0e92 Quiet harmless compiler warnings 2015-07-01 11:21:15 -04:00
theoreticalbts
7bd47af88e rpc: Move many method implementations from headers to cpp files 2015-06-30 15:54:29 -04:00
theoreticalbts
f461dee432 http_api: Implement http_api_connection class to serve RPC over HTTP 2015-06-30 03:00:43 -04:00
Eric Frias
3dd848d7eb Fix HTTP request to work with servers that don't specify a
content-length header (either chunked encoding or http 1.0-style.
Allow sending a different content-type in request header other
than app/json.
2015-06-29 11:34:27 -04:00
Eric Frias
707b9497c6 Increase space reserved for stringstream fwd, cryptonomex/graphene#86 2015-06-25 09:27:24 -04:00
Vikram Rajkumar
701b9ac00c Remove problematic easylzma 2015-06-23 16:19:36 -04:00
Vikram Rajkumar
943fe5150e Remove unused salsa20
See https://github.com/bitshares/bitshares/issues/1089
2015-06-23 15:43:36 -04:00
Vikram Rajkumar
43f3aff577 Remove unused scrypt-jane
See https://github.com/bitshares/bitshares/issues/1016
2015-06-23 15:34:28 -04:00
Eric Frias
c2451f30f1 Add a new mode to the variant->json generator to restore the normal
behavior of writing numbers out as numbers instead of strings
2015-06-12 11:05:58 -04:00
Eric Frias
e5a5323642 When formatting doubles as strings, use 17 digits of precision to ensure they are read back in without loss (up from 12 digits).
Add a mode to the JSON parser to parse all real numbers into strings, so we can later parse them into doubles or another fixed/floating point format to preserve as much precision as needed
2015-06-12 11:05:52 -04:00
Eric Frias
18e80eca23 Merge branch 'github_master' 2015-06-12 10:53:02 -04:00
Daniel Larimer
3a392eba51 adding typdefs and exta testing 2015-06-12 09:49:40 -04:00
Eric Frias
74a377aee5 Add a new mode to the variant->json generator to restore the normal
behavior of writing numbers out as numbers instead of strings
2015-06-11 19:22:22 -04:00
Daniel Larimer
8087aa66d0 removing AGPL code 2015-06-11 09:10:12 -04:00
Daniel Larimer
a824aa04a9 Mapping blinding crypto to fc ecc api 2015-06-10 18:34:19 -04:00
Eric Frias
1bd8672adf Merge branch 'github_master' 2015-06-10 18:01:39 -04:00
Daniel Larimer
969768cdd5 Merge branch 'master' of https://github.com/cryptonomex/fc 2015-06-10 12:54:13 -04:00
Daniel Larimer
68410f35fe defining new api calls 2015-06-10 12:54:12 -04:00
Nathan Hourt
80366e4346 Add missing time_point_sec operator overloads 2015-06-10 10:18:33 -04:00
Eric Frias
541118d89d Merge branch 'master' into syncad_master 2015-06-04 17:14:37 -04:00
Nathan Hourt
1bbb748c4e Optimize deque to/from variant 2015-06-04 10:42:59 -04:00
theoreticalbts
0ad91391c7 variant.hpp: Prettify includes 2015-06-01 17:13:51 -04:00
theoreticalbts
b391ecb4c7 deque: Add std::deque to serialization / reflection 2015-06-01 17:13:51 -04:00
Eric Frias
b899bbd476 Merge remote-tracking branch 'github/master' 2015-05-29 09:20:58 -04:00
theoreticalbts
af636c10a2 Add data_size() member to hash classes 2015-05-28 10:23:27 -04:00
Daniel Larimer
2d5f89bd17 Merge branch 'master' of github.com:BitShares/fc 2015-05-28 08:43:47 -04:00
Daniel Larimer
994c4097fa fix build 2015-05-28 08:43:43 -04:00
Nathan Hourt
d0b4b64923 Remove log spam 2015-05-27 16:15:49 -04:00
Daniel Larimer
637f475e44 parse doubles as strings 2015-05-27 11:26:04 -04:00
Daniel Larimer
ccd14c7260 Merge pull request #4 from pmconrad/libsecp256k1
fc::ecc implementations based on libsecp256k1
2015-05-20 10:30:05 -04:00
Daniel Larimer
14052a8e46 Merge branch 'master' of github.com:BitShares/fc 2015-05-19 11:40:51 -04:00
Daniel Larimer
2cbb00426c adding ability to get the count of items in a static variant 2015-05-19 11:40:47 -04:00
Eric Frias
3508e0c034 Add overloads of comparison operators to allow comparison of safe/uint128 and native integer classes 2015-05-19 10:03:03 -04:00
Daniel Larimer
a3c284408e make CLI prompt configurable 2015-05-18 13:40:01 -04:00
Daniel Larimer
e934e9a9f7 Adding missing file 2015-05-12 18:41:40 -04:00
Daniel Larimer
9ef91e2245 partial fixes to crashing on websocket client close 2015-05-12 17:15:00 -04:00
Daniel Larimer
c28ed38f1a adding support for secure websocket client 2015-05-12 16:16:10 -04:00
Daniel Larimer
fb62b6421c adding ssl support to websocket 2015-05-12 14:50:08 -04:00
Nathan Hourt
be5a67763b Add new min and max methods on safe 2015-05-12 13:06:11 -04:00
dnotestein
d0be40a208 Fix ambiguity between fc and std forward 2015-05-10 14:41:23 -04:00
Peter Conrad
05dee8669f Much refactoring
Fixed Move semantics in openssl impl
Use in-place construction for secp256k1
Swapped implementations in mixed - sign with libsecp256k1, verify with openssl
2015-05-07 14:51:03 +02:00
Peter Conrad
7b15098f3a Woot! 2015-05-07 14:49:52 +02:00
Peter Conrad
34af5d98ec Intermediate version 2015-05-07 14:49:52 +02:00
Peter Conrad
f17444d90b Added ECC_IMPL switch + interop test 2015-05-07 14:48:00 +02:00
theoreticalbts
7dcfa9a910 safe.hpp: Add comment noting that safe is not compatible with uint128_t 2015-05-06 16:52:49 -04:00
theoreticalbts
3bf3b0c9b4 uint128.hpp: Reflect uint128 2015-05-06 16:52:49 -04:00
Daniel Larimer
5dabe6ba2c better error messages 2015-05-06 16:37:38 -04:00
Daniel Larimer
4df08d8efe fix crash in websocket 2015-05-06 16:34:55 -04:00
Nathan Hourt
2e7e14df1c Add missing #include 2015-05-02 15:37:36 -04:00
Nathan Hourt
2195f191e4 Add increment/decrement to safe 2015-05-01 16:18:15 -04:00
theoreticalbts
80de0987d7 Add readline support to fc::rpc::cli 2015-04-29 16:37:54 -04:00
Daniel Larimer
6c589678df adding extra reflection helpers 2015-04-29 13:17:38 -04:00
theoreticalbts
18a484e4bf cli.hpp: Fix include 2015-04-21 15:01:25 -04:00
dnotestein
a62f7d2e87 allow reflecting a pqxx::result::size_type on windows 2015-04-08 09:59:15 -04:00
dnotestein
4ddc8f053b Merge remote-tracking branch 'remotes/bitshares/master' 2015-04-08 09:33:47 -04:00
Daniel Larimer
a0192d1081 unique_ptr to/from variant 2015-04-01 17:24:33 -04:00
Daniel Larimer
257ac52b91 fix build issue 2015-04-01 11:30:47 -04:00
Daniel Larimer
c8200afade better close notification and error handling 2015-04-01 10:25:57 -04:00
Daniel Larimer
8b5e2e7613 adding helper to get a list of variants from a string 2015-03-31 18:46:05 -04:00
Daniel Larimer
633ab3f32d Adding cli wrapper to expose APIs to the CLI 2015-03-31 17:45:08 -04:00
Daniel Larimer
55ee57040a added support for unhandled extension and mapping the first registered API to global namespace 2015-03-31 17:45:01 -04:00
Daniel Larimer
1fb31737a7 RPC now supports remote callbacks
to_variant now skips null optional members on reflected objects.
2015-03-31 11:31:56 -04:00
Eric Frias
174e065bd5 When formatting doubles as strings, use 17 digits of precision to ensure they are read back in without loss (up from 12 digits).
Add a mode to the JSON parser to parse all real numbers into strings, so we can later parse them into doubles or another fixed/floating point format to preserve as much precision as needed
2015-03-31 09:47:54 -04:00
Daniel Larimer
bcd642e31f fix memory leak in circular shared ptrs 2015-03-30 18:34:04 -04:00
Daniel Larimer
e506e4f4be added listen on a specific endpoint/port pair 2015-03-30 16:56:28 -04:00
Daniel Larimer
09e645448d add support for void return 2015-03-30 14:08:26 -04:00
Daniel Larimer
94faa4e362 add support for const ref params and fix bugs with implict variant conversion 2015-03-30 14:05:21 -04:00
Daniel Larimer
74b707999c fix bugs with websocket and integrate API support 2015-03-27 16:29:33 -04:00
Daniel Larimer
7008d1419a adding websocket api stub 2015-03-26 18:38:43 -04:00
Daniel Larimer
b8d7d3012d abstracting rpc state 2015-03-26 18:17:47 -04:00
Daniel Larimer
41fedc14f3 Merge branch 'master' of github.com:BitShares/fc 2015-03-26 16:51:15 -04:00
Daniel Larimer
4ce26f068f implement simple websocket wrapper ontop of websocketpp 2015-03-26 16:51:10 -04:00
Vikram Rajkumar
3d17836a1e Remove extraneous log config setting 2015-03-25 20:07:19 -04:00
Eric Frias
2977ca954f Workaround compile errors on MSVC 2015-03-17 16:24:39 -04:00
Daniel Larimer
bb7cedade5 adding != op 2015-03-11 18:17:45 -04:00
Nathan Hourt
3b6f2978b0 Cleanup API code 2015-03-11 11:15:11 -04:00
Daniel Larimer
171eb212cd refactor api_client and api_server into api_connection and add JSON impl 2015-03-11 10:49:30 -04:00
Daniel Larimer
fa352e14bd nested API calls fully abstracted 2015-03-10 18:52:27 -04:00
Daniel Larimer
ee9c2ac4ed api progess 2015-03-09 18:50:20 -04:00
Nathan Hourt
4194a609c2 Allow hashing of uint128 2015-03-06 16:41:52 -05:00
Daniel Larimer
9b7753b127 adding hash method to sha224 2015-03-06 15:12:09 -05:00
Daniel Larimer
73c2c1de90 fix static_variant to/from variant 2015-03-05 09:54:33 -05:00
Daniel Larimer
3a120c0f7f fix bugs in static_variant 2015-03-05 08:58:29 -05:00
Daniel Larimer
0caac3fee9 update exceptions in static_variant and add header gaurd 2015-03-05 08:22:41 -05:00
Daniel Larimer
9c0f222e06 reflecting typename for arbitrary vectors 2015-03-04 11:14:15 -05:00
Nathan Hourt
773844668d Merge branch 'master' of github.com:BitShares/fc 2015-03-02 18:24:48 -05:00
Nathan Hourt
d0803ec9cd Fixes circa safe and static_variant 2015-03-02 18:24:37 -05:00
Eric Frias
12460ba28b Qualify call to fc:: to avoid "ambiguous" error with boost types 2015-03-02 12:23:27 -05:00
Nathan Hourt
b393ddc1da Check -INT_MIN case in safe.hpp negate operator 2015-03-02 09:51:36 -05:00
Daniel Larimer
e71ea52075 add mult to safe 2015-03-01 09:53:21 -05:00
Daniel Larimer
fd4fc4f0cb reflect safe 2015-02-28 10:08:04 -05:00
Daniel Larimer
3917a8d6a0 fix static_variant 2015-02-27 16:53:55 -05:00
Daniel Larimer
f9f965809b bug fixes 2015-02-27 16:07:50 -05:00
Daniel Larimer
c0a4ed77b1 adding static_variant type 2015-02-27 13:41:55 -05:00
Daniel Larimer
537029f09f fix build 2015-02-23 14:01:58 -05:00
Daniel Larimer
cf6f81dd5b Merge branch 'master' of github.com:BitShares/fc 2015-02-23 09:06:16 -05:00
Daniel Larimer
7e34d8fe56 Adding support for flat_map,flat_set 2015-02-23 09:06:04 -05:00
SynaptiCAD User
30e52b6b01 Fix GELF logging to split long messages, use compression 2015-02-22 14:07:05 -05:00
Daniel Larimer
ec66863902 added type for safe int ops 2015-02-19 11:39:17 -05:00