Commit graph

1321 commits

Author SHA1 Message Date
Michael Vandeberg
78b511c11e Fix warning in fixed_string.hpp 2016-09-20 15:06:00 -04:00
Daniel Larimer
3c6d7d9fe3 remove console spam 2016-09-16 17:17:06 -04:00
Daniel Larimer
ddc2c16cdb removing duplicate definitions given boost::flat_map == boost::interprocess::flat_map 2016-09-16 14:53:03 -04:00
Daniel Larimer
5c5156f3db remove multiprecision from fixed_string 2016-09-16 13:31:03 -04:00
Daniel Larimer
e7d0d26fe2 adding fixed_string definition 2016-09-15 15:29:16 -04:00
Daniel Larimer
f59a516256 define to/from variant for boost interprocess deque and vector 2016-09-14 10:30:48 -04:00
theoreticalbts
19d41b8606 Do not emit \a escape sequence 2016-09-02 10:36:11 -04:00
theoreticalbts
360d86da80 Fix uninitialized variable warning 2016-08-29 13:11:37 -04:00
theoreticalbts
21d62f0a96 Throw when deserializing an integer into a value not in enum 2016-08-26 16:28:36 -04:00
theoreticalbts
80b2341e77 Throw when parsing a string as enum if the string parses as integer but does not exist in enum 2016-08-26 15:29:43 -04:00
theoreticalbts
8d99ea94e6 Avoid undefined behavior in enum deserialization
atoi() has undefined behavior when given a string that can't be parsed as an integer.
This patch replaces atoi() with boost_lexical_cast() and throws an exception when we get
something that's not a number.
2016-08-26 15:01:26 -04:00
theoreticalbts
a7376ceba2 tcp_socket.cpp: More verbose error message 2016-08-16 14:51:50 -04:00
Eric Frias
57d14c7de8 Implement gzip-compression of rotated log files (this effectively
restores the functionality removed in 701b9ac00c,
which had lzma-compression of rotated logs)
2016-08-16 14:20:20 -04:00
theoreticalbts
894d784523 api_connection.hpp: Rename member variable api -> _api to avoid conflicting with type name 2016-08-15 10:59:42 -04:00
theoreticalbts
f3e69d81a9 sha256: Implement and test clz(), approx_log_32() 2016-08-11 12:10:14 -04:00
Daniel Larimer
d74f49ab04 progress on binary api connection 2016-07-30 19:25:32 -04:00
Daniel Larimer
de9a29c33e Progress toward binary RPC" 2016-07-30 19:24:15 -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
8cfc246316 Merge pull request #2 from arhag/mingw-build-speedup
Changes to secp256k1 build that should speed up steemd hash rate on Windows
2016-05-26 17:15:38 -04:00
arhag
67fe2cfe16 Changes to secp256k1 build that should speed up hash rate on Windows 2016-05-26 15:45:51 -04:00
Daniel Larimer
2bc237537c updating websocket and adding new utf8 code 2016-05-24 19:24:03 -04:00
Daniel Larimer
bc5947d6c7 Merge pull request #1 from arhag/mingw-build
Changes to fc to get MinGW cross-compilation working
2016-05-23 16:54:41 -04:00
arhag
580d626fdd Fix diff-match-patch submodule 2016-05-22 03:07:14 -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
b6fdcdd5dd json_relaxed.hpp: Fix bug in triple quote string parsing 2016-05-05 13:03:35 -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
theoreticalbts
7906a58468 Revert "Make websocket permessage-deflate default to disabled since it causes problems with Chrome"
This reverts commit 622ff58039.
2016-04-19 22:58:30 -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
Eric Frias
605e9ed7ef Change the variable substitution used in ilog(), FC_THROW() and similar
to make providing a name for the values to be logged optional; if not
specified, the variable name will be generated.  In other words,
you can now say ilog("${foo}", (foo)) instead of ilog("${foo}", ("foo", foo)).
2016-04-06 10:19:28 -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
theoreticalbts
31adee49d9 Merge remote-tracking branch 'fmv/master' 2016-03-22 10:17:34 -04:00
Eric Frias
2bd8e92a75 Windows build fixes (disable compiling permessage-deflate, which isn't very useful right now. The build error will probably be resolved in websocketpp by the time we need it) 2016-03-18 09:32:55 -04:00
Nathan Hourt
397c10ce19 Fix installation
FC now installs properly with a `make install`
2016-03-17 17:41:31 -05:00
Nathan Hourt
ea2107d33a Prevent websocketpp from polluting installs
When clients of fc (such as graphene) do an install (via `make install` or similar), websocketpp was installing as well. This commit prevents this from happening.
2016-03-17 17:27:21 -05:00
Daniel Larimer
2d521c390d Merge branch 'master' of github.com:steemit/fc 2016-03-17 17:24:42 -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
Eric Frias
622ff58039 Make websocket permessage-deflate default to disabled since it causes problems with Chrome 2016-03-14 18:26:29 -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
38419164b6 optional.hpp: Allow easy access to contained type 2016-02-26 14:26:58 -05:00
Eric Frias
ef34763d3b Update websocket, missed during merge 2016-02-26 11:42:19 -05:00
Eric Frias
fa2b8fd4d2 Merge branch 'cryptonomex_master'
# Conflicts:
#	src/network/http/websocket.cpp
2016-02-26 11:16:10 -05:00