Commit graph

662 commits

Author SHA1 Message Date
theoreticalbts
19d41b8606 Do not emit \a escape sequence 2016-09-02 10:36:11 -04:00
theoreticalbts
a7376ceba2 tcp_socket.cpp: More verbose error message 2016-08-16 14:51:50 -04:00
theoreticalbts
f3e69d81a9 sha256: Implement and test clz(), approx_log_32() 2016-08-11 12:10:14 -04:00
Daniel Larimer
e8e26838cc first step toward binary RPC 2016-07-30 18:41:03 -04:00
theoreticalbts
c672e3b4b4 json.cpp: Add missing cases for control character escape sequences 2016-07-21 13:33:36 -04:00
Daniel Larimer
e5ffc620ba updating fc to support more threads 2016-07-18 21:20:40 -04:00
Daniel Larimer
c109dbecf3 improve performince of fc::uin128 divide 2016-06-27 16:22:14 -04:00
Daniel Larimer
2bc237537c updating websocket and adding new utf8 code 2016-05-24 19:24:03 -04:00
arhag
66d4b0841d Changes to fc to get MinGW cross-compilation working 2016-05-22 01:33:19 -04:00
theoreticalbts
44ede99409 websocket.cpp: Allow specifying CA root in websocket_client constructor 2016-05-18 21:14:25 -04:00
theoreticalbts
56e36bed8f Revert "Update the websocketpp library and change the configuration options we pass"
This reverts commit d5370fc2ea.
2016-04-19 22:58:39 -04:00
theoreticalbts
1f02c6790f Revert "Add an option to the websocket server constructor to allow disabling deflate"
This reverts commit 21045dde5f.
2016-04-19 22:58:37 -04:00
Daniel Larimer
b34e8584ae Merge branch 'master' of https://github.com/steemit/fc 2016-04-08 14:18:47 -04:00
Daniel Larimer
09975ce12b adding IP address to http request handler 2016-04-08 14:18:42 -04:00
theoreticalbts
5c1bb56177 Implement modular API support
- Create class `api_base` to be base class of `api<T>`, and `typedef shared_ptr<api_base> api_ptr`
- Create function `api_base::as<T>()` to allow simple downcast to `api<T>`
- Create class `any_api` to contain an API which has been returned from the remote end, but not yet cast with `as<T>`
- `to_generic()` override allowing remote API to return `api_ptr`, thus we need not know the type of the returned API at compile time
- Allow API's to be referenced by name, if we call with a string API name in the JSON the framework calls get_api_by_name on API 1 to determine the API ID
2016-04-04 00:50:56 -04:00
Daniel Larimer
a421e28048 change json seralization of map<string,T> to be object rather than array of pairs 2016-03-17 17:24:25 -04:00
Daniel Larimer
0dca15c395 Merge branch 'master' of https://github.com/cryptonomex/fc 2016-03-11 12:33:41 -05:00
Daniel Larimer
eaa763aff1 adding canonical flag 2016-03-11 12:33:33 -05:00
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
Eric Frias
d5370fc2ea Update the websocketpp library and change the configuration options we pass
when creating the websocket servers to enable deflate compression on
websocket frames.  This is relevant to cryptonomex/graphene#540 because
the spammed data is higly compressible.  In my tests, it reduces bandwidth
for a single idle node by a factor of ~16, from 577kbps down to 36kbps.
This doesn't require any changes to the wallets, simply upgrading the
public servers will begin sending compressed data to all clients that
support it.
Note: this commit adds a dependency on zlib for non-apple platforms
(it was already required on apple)
2016-03-03 16:53:43 -05:00
theoreticalbts
83b4de067a future.cpp: Fix use-after-free bug cryptonomex/graphene#597 2016-02-25 03:04:45 -05:00
Daniel Larimer
e5ca765f15 clean up logging 2016-02-15 11:59:28 -05:00
Eric Frias
6ed7717826 Handle http requests to the websocket server async, in a similar manner to the way regular websocket messages were handled since 01445529f0. Fixes cryptonomex/graphene#251, and likely eliminates the need for the workaround used to fix cryptonomex/graphene#1 and cryptonomex/graphene#252 2016-02-10 15:25:54 -05:00
Daniel Larimer
7840ef16e9 adding rshift 2016-02-04 16:32:13 -05:00
theoreticalbts
46ed830373 variant.cpp: Tighten bool parsing in variant::as_bool() cryptonomex/graphene#525 2016-01-21 15:30:51 -05:00
Michael Vandeberg
d74eee8110 Implements deserialize for extended_public_key and extended_private_key.
Implementation needed by cryptonomex/graphene#500
2016-01-07 17:14:16 -05:00
Daniel Larimer
6495004302 move potential yields outside of catch 2015-10-09 17:08:03 -04:00
Eric Frias
2b2dfc62fc Win32 compile fixes (replace nonstandard runtime-sized auto arrays with alloca) 2015-10-05 12:09:35 -04:00
Daniel Larimer
dacdb997f8 Merge branch 'master' of https://github.com/cryptonomex/fc 2015-10-05 08:44:31 -04:00
Daniel Larimer
6872112ab0 adding extra checks for yielding while processing a catch 2015-10-05 08:44:24 -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
9933f57dda In asio worker threads, catch and ignore exceptions thrown by asio
handlers.  websocketspp code leaks boost exceptions from its handlers
which would otherwise terminate the program
2015-09-25 19:24:48 -04:00
Daniel Larimer
83a9e4d7c8 Update NTP performance requirments
NTP server must ACK within 300ms or time will not be set.
Removed extra printing
2015-09-23 16:22:11 -04:00
Daniel Larimer
d19f67d94f prevent yielding from catch block 2015-09-14 11:14:52 -04:00
Daniel Larimer
19e42ac4c4 fix potential crash in websocket 2015-09-07 17:46:08 -04:00
Daniel Larimer
08944de151 updating logs to append 2015-09-07 11:15:48 -04:00
theoreticalbts
80d967a70d variant_object: Implement operator() overload to copy a variant_object 2015-08-28 22:14:27 -04:00
Eric Frias
71be796af5 Remove extraneous spaces in relative time printing 2015-08-24 09:34:18 -04:00
Eric Frias
18ed468c6f Win32 compile fix (allocate buffer on heap instead of stack, probably a good
idea anyway given fc task stack sizes)
2015-08-17 12:38:54 -04:00
Nathan Hourt
9c868b3927 Fix crash on exit 2015-08-14 14:31:09 -04:00
theoreticalbts
c16bb206a3 fstream: Implement read_file_contents 2015-08-06 14:47:15 -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
5377b45d97 Fixed signedness, simplified word-shift 2015-07-30 14:58:35 +02:00
Peter Conrad
d67c18f6c3 Fixed shift in hashes + more tests 2015-07-29 23:22:34 +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
Vikram Rajkumar
088dadd124 Merge pull request #47 from pmconrad/testing
Testing
2015-07-29 13:29:22 -04:00