Commit graph

735 commits

Author SHA1 Message Date
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
Daniel Larimer
cf4ed08d4b Merge branch 'master' of github.com:BitShares/fc 2015-02-17 09:55:36 -05:00
Daniel Larimer
93a789891e Adding is_utf8 call and making enum_type cast explicit 2015-02-17 09:55:31 -05:00
Nathan Hourt
c7de8954fb Merge branch 'master' of github.com:bitshares/fc 2015-02-12 10:55:12 -05:00
Nathan Hourt
de2000795d Fix crashes when destroying json_connection, tcp_socket
Also, create on_close callback on json_connection, so clients can
know when the connection has failed.
2015-02-12 10:54:18 -05:00
Vikram Rajkumar
ee370dd5a8 Define sha256::hash( sha256 ) 2015-02-11 18:58:19 -05:00
Daniel Larimer
0bf2f9cfd4 fix conflict 2015-02-11 18:32:23 -05:00
Daniel Larimer
71e4e221b7 merge 2015-02-11 18:28:29 -05:00
Daniel Larimer
057861c608 extra raw io helpers 2015-02-11 18:27:33 -05:00
Nathan Hourt
13430fce12 Revert "Dumb hack that seems to prevent crashing when destroying json_connection"
This reverts commit b068865eb5.
Caused crashes elsewhere.
2015-02-11 17:20:58 -05:00
Nathan Hourt
b068865eb5 Dumb hack that seems to prevent crashing when destroying json_connection 2015-02-10 18:35:50 -05:00
Eric Frias
55c5d95920 Add raw serialization of real128 2015-02-09 18:55:58 -05:00
Vikram Rajkumar
54a51c3471 Define fc::ripemd160::hash() for arbitrary serializable objects 2015-02-05 18:52:03 -05:00
theoretical
323d59b054 real128: Rename PRECISION to FC_REAL128_PRECISION and expose it globally 2015-02-03 11:31:20 -05:00
theoretical
51033bcb12 real128: Implement from_fixed() to initialize real128 from fixed point value 2015-02-03 11:23:22 -05:00
theoretical
27e224b012 uint128: Make to_integer(), to_uint64() assert magnitude
- All places these are used already handle magnitude checks correctly
- As a "bit-twiddling" method, low_bits() truncates
- As a "semantics preserving type conversion" method, to_uint64() asserts
- Add low_32_bits() as a "bit-twiddling" non-asserting to_integer() equivalent
2015-01-30 13:19:01 -05:00
Daniel Larimer
633c889ce3 Merge branch 'master' of https://github.com/BitShares/fc 2015-01-29 17:01:19 -05:00
Daniel Larimer
b300404b89 adding comparison operators for optional 2015-01-29 17:01:17 -05:00
Eric Frias
a33bb60cf6 Add a simplified lock file class to use to prevent two applications from using the same resource 2015-01-21 19:29:38 -05:00
Eric Frias
f3065b367e Add log appender that sends logs in GrayLog Extended Log Format 2015-01-20 16:13:26 -05:00
Eric Frias
0366b2e6b3 Suppress annoying "conditional expression is constant" win32 warning 2015-01-20 16:10:34 -05:00
theoretical
975649ce5d real128: Replace header comment that inaccurately describes implementation 2015-01-07 13:56:46 -05:00
Vikram Rajkumar
fea997ca14 Fix compiler warnings 2015-01-07 11:53:09 -05:00
theoretical
6ecb55ac2e Implement full product for uint128 * uint128 -> 256-bit result 2015-01-07 11:20:34 -05:00
drltc
40943808d0 Initial implementation of relaxed JSON parser (not fully tested) 2015-01-02 10:37:16 -05:00
theoretical
524093ce1e Implement chmod function (no-op on Windows) 2014-12-31 14:42:36 -05:00
Vikram Rajkumar
874f103b8d Fix overloaded virtual function warnings 2014-12-23 15:45:57 -05:00