Commit graph

814 commits

Author SHA1 Message Date
dnotestein
a43bdf2ab7 fix fc compilation for windows (add NO_RETURN to rethrow declaration) 2014-06-07 12:55:35 -04:00
Daniel Larimer
17117bc6bf adding support for 7 arg rpc calls 2014-06-06 22:46:28 -04:00
Daniel Larimer
d046526974 upgrade exception handling to support custom types in 3rd party libraries 2014-06-06 16:42:42 -04:00
Daniel Larimer
942545df5e adding variant for microseconds 2014-06-04 15:00:58 -04:00
Eric Frias
a6ca7042da add to/from variant for fc::microseconds 2014-06-04 13:51:50 -04:00
Eric Frias
2690a52fe5 Add a function to return the local endpoint of a http server 2014-06-03 19:00:22 -04:00
Daniel Larimer
5a0f996333 adding pretty print 2014-06-03 11:09:15 -04:00
Daniel Larimer
0cf08f124e Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc into HEAD 2014-06-02 21:05:19 -04:00
Daniel Larimer
285913bce0 some compilers need more space 2014-06-02 21:05:04 -04:00
Eric Frias
2251d0f241 Fix bigint on conversions to and from 64-bit integers on 32-bit platforms
Fixes BitShares/bitshares_toolkit#150
2014-06-02 13:32:42 -04:00
vogel76
04f07aa429 [BW]: [Fix] Eliminated OpenSSL initialization from CRT init time (which caused random problems on windows7 machines leading the application to silent crash). Right now it is done at first use of fc parts using it. Also added method to setup OpenSSL configuration path to custom one (to avoid using path compiled into OpenSSL at configuration & build time). 2014-06-02 17:34:04 +02:00
Eric Frias
9fa6e8a430 Separate the 'bind' operation for tcp_sockets from the 'connect_to' operation so we can tell which operation is throwing an exception in client code. convert a few boost exceptions into fc::exceptions. 2014-06-01 18:08:10 -04:00
Daniel Larimer
861221098f made ripemd160 string conversion operator explicit 2014-05-30 14:29:00 -04:00
Eric Frias
7dde0a705d Add 5 and 6 argument versions of json rpc call functions 2014-05-29 15:54:40 -04:00
Daniel Larimer
ca0b3c7758 adding reflect typename to fc::microseconds 2014-05-29 10:54:42 -04:00
Daniel Larimer
65361f1fce updated typedefs for clarity 2014-05-25 23:12:33 -04:00
Daniel Larimer
ac03a71f3d improve variant cast error reporting 2014-05-25 14:18:26 -04:00
Daniel Larimer
f636a9602c Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc into phoenix 2014-05-23 21:38:11 -04:00
Daniel Larimer
3eaa6a3f65 adding mod to uint128 2014-05-23 21:38:05 -04:00
Eric Frias
b9050b589d Merge branch 'phoenix' into tcp_rate_limiting 2014-05-23 18:04:05 -04:00
Eric Frias
c1ff37889b Add + operator to time_point_sec 2014-05-23 18:03:27 -04:00
Nikolai Mushegian
adacbf6d6b Merge pull request #27 from vikramrajkumar/phoenix
Minor cleanup
2014-05-23 17:43:16 -04:00
Daniel Larimer
ba45a9b090 improve error reporting on std::exceptions 2014-05-22 14:56:52 -04:00
Daniel Larimer
9874fc9076 adding != operator to fc::microseconds 2014-05-22 14:24:31 -04:00
Vikram Rajkumar
c9529c8f87 Return synonym "uint160_t" for uint160 typename to not break leveldb upgrade routine 2014-05-22 03:52:59 -04:00
Eric Frias
5719d28a19 Move/rename git revision info compiled into FC to be more self-explanatory 2014-05-20 18:02:20 -04:00
Eric Frias
cb6014eecc Remove to_string overload on size_t for win32, it now conflicts with the uint32_t case 2014-05-20 17:10:38 -04:00
Eric Frias
d2e2311d72 Removed old versions of base-16/58/64 conversion headers from fc/io, they have moved to fc/crypto 2014-05-20 17:07:34 -04:00
Daniel Larimer
6b9abdf272 adding raw::pack_size() helper 2014-05-20 13:42:21 -04:00
Daniel Larimer
b5828dc750 adding extra to_string variants 2014-05-20 12:31:05 -04:00
Daniel Larimer
17aefe29de using explicit bool operator for optional 2014-05-20 11:25:31 -04:00
Daniel Larimer
87c314facb raw serialization of std::map 2014-05-19 15:22:19 -04:00
Daniel Larimer
013b9a867f reflect typename of variant 2014-05-18 21:14:51 -04:00
HackFisher
ce131bae43 Fix compile error under windows
Error 1 error C2668: 'fc::to_string' : ambiguous call to overloaded function
2014-05-18 16:37:06 +08:00
Daniel Larimer
fd00bddcb4 update logging to create parent directory if it does not exist 2014-05-17 16:38:32 -04:00
Daniel Larimer
06bc873da0 improving error reporting in deserialization 2014-05-17 19:35:44 +00:00
Vikram Rajkumar
cde67a202c Implement assignment by subtraction for time classes 2014-05-16 22:29:46 -04:00
Eric Frias
b3e30e893b 32/64 bit int stuff 2014-05-15 14:14:58 -04:00
Eric Frias
2837892ec0 Upgrade to new version of city_hash library. This version has performance improvements, plus implements a variant with 32-bit output which will quiet some compiler warnings on win32. 2014-05-14 17:11:36 -04:00
Eric Frias
873a0ea70d Merge branch 'phoenix' into tcp_rate_limiting 2014-05-14 16:26:34 -04:00
Eric Frias
db7b1bdd69 Add an optional timeout parameter when waiting for a local process to exit 2014-05-14 08:51:30 -04:00
Daniel Larimer
0a11b29984 update error reporting 2014-05-13 16:41:27 -04:00
Eric Frias
37330ca005 change the naming of invalidOperation exception to the more fc-friendly
invalid_operation, and add an implementation so it can be used.
2014-05-09 11:50:32 -04:00
Eric Frias
bc4361bf64 Merge branch 'phoenix' into tcp_rate_limiting
Conflicts:
	include/fc/network/tcp_socket.hpp
	src/network/tcp_socket.cpp
2014-05-08 09:04:45 -04:00
Daniel Larimer
9378f6c7aa Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc into phoenix 2014-05-07 21:27:48 -04:00
Daniel Larimer
3a34299199 update json validation and varint hashing 2014-05-07 21:27:37 -04:00
Eric Frias
b8a7531eab Fix error message printed when unable to deserialize a json object, improve
logging of return values and add logging of exceptional returns from
json function calls.  Continue my endless quest to break the mac build.
2014-05-06 17:20:04 -04:00
Eric Frias
9d3bddf09a constification 2014-05-01 14:04:44 -04:00
Eric Frias
aa111510f3 Expose enough functions in tcp_socket and tcp_server to allow listening and originating connections on the same port. So far, this seems to work on win32, other platforms untested.
Add a local_endpoint() function so we can find out which local interface a socket is bound to
2014-05-01 14:02:49 -04:00
Daniel Larimer
1d8f80c8f7 Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc into phoenix 2014-04-27 21:20:54 -04:00
Daniel Larimer
6f466979cc adding helper methods 2014-04-27 21:20:40 -04:00
Nikolai Mushegian
6b84b990b3 Merge pull request #21 from vikramrajkumar/phoenix
Make fc::reflector<ENUM>::to_string work with C++11 strongly typed enumerations
2014-04-25 16:19:39 -04:00
Daniel Larimer
61f2ac4679 adding HTTP response code 2014-04-22 17:25:07 -04:00
Vikram Rajkumar
1bdc40368f Make fc::reflector<ENUM>::to_string work with C++11 strongly typed enumerations 2014-04-22 15:57:11 -04:00
Daniel Larimer
e36ccb3cfd adding NotAuthorized HTTP response code 2014-04-22 10:22:17 -04:00
Eric Frias
cd34f696ce - Add four-argument version of json-rpc call function
- fix bug in json parser that prevented correct parsing of
  a true/false/null at the end of input
- prevent infinite recursion in a json helper function
2014-04-21 14:34:46 -04:00
Eric Frias
06df18c690 More work towards rate-limited TCP sockets 2014-04-17 19:39:15 -04:00
Eric Frias
f0633f8022 Merge branch 'phoenix' into tcp_rate_limiting 2014-04-17 16:18:22 -04:00
Eric Frias
ce7139c073 Start of work towards throttling TCP connections 2014-04-17 12:00:52 -04:00
Eric Frias
1b16e15585 Quiet compiler warning signed vs unsigned 2014-04-14 17:10:29 -04:00
Daniel Larimer
ac0f01843f fix build on osx by disabling some keepalive params 2014-04-11 17:06:57 -04:00
Eric Frias
85a9da6f27 Add to tcp_socket to enable TCP keepalives 2014-04-09 18:38:52 -04:00
Eric Frias
8bdc6fd219 Colorize fc log messages on win32 2014-04-06 18:06:43 -04:00
Eric Frias
3d02e3bc00 Wrap OpenSSL's random number generator in fc clothing 2014-04-02 08:54:13 -04:00
Eric Frias
2e5fdf952c Add a new version of tcp_socket::connect_to() that allows you to set the source port
(working, but not yet useful because we'll need to set SO_REUSEADDR)
2014-04-02 08:54:13 -04:00
Eric Frias
d27be6851b Fix serializing enums 2014-04-02 08:54:12 -04:00
Eric Frias
5543044bd3 Collect time of git commit for display in Keyhotee, add function for pretty-printing times 2014-03-31 16:10:52 -04:00
dnotestein
6c989e7b7a added minutes, hours, and days time functions 2014-03-31 11:01:28 -04:00
dnotestein
10127a854c Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc into phoenix
Conflicts:
	src/crypto/elliptic.cpp
2014-03-30 18:32:20 -04:00
dnotestein
f09c91f878 added hash64 function that uses sha256 to replace city_hash in blockchain and message protocol-related hashing 2014-03-30 14:16:33 -04:00
Daniel Larimer
5f9dfa9a42 update http code 2014-03-27 19:53:40 -04:00
Daniel Larimer
3c59eebe92 Update HTTP server api to specify network interface 2014-03-27 01:55:52 -04:00
Daniel Larimer
987568e31b update apis 2014-03-27 01:09:08 -04:00
Daniel Larimer
bdeefb48bf adding std::map<> conversions to/from variant 2014-03-24 11:46:23 -04:00
Daniel Larimer
d3c2f60fe0 adding extra operators 2014-03-13 20:04:47 -04:00
Daniel Larimer
4ed7659b2b Merge branch 'phoenix' of github.com:InvictusInnovations/fc into phoenix 2014-03-10 22:23:19 -04:00
Daniel Larimer
a7b579e4e8 adding api helper 2014-03-10 22:22:31 -04:00
HackFisher
8b73226312 This should be a typo, fix it.
move ">" before #endif
2014-03-09 16:18:00 +08:00
Eric Frias
fdbaf88e5e Provide a way to intercept Win32 structured exceptions in async tasks
Something about the stacks created by boost::context prevents global structured exception handlers
from being called.  This allows the user to register a handler which will be called when there
is an unhandled structured exception in async task.
2014-03-08 18:48:19 -05:00
vogel76
f5249dc2d6 [BW]: [Ign] Workaround for missing template aliasing feature in VS 2012 to make bts_wallet compiling. 2014-03-04 18:24:15 +01:00
vogel76
163be8a6d0 [BW]: [NIP] Added public_key::to_base58 text conversion to simplify contact display_name generation at bts side. 2014-03-03 11:31:08 +01:00
Daniel Larimer
4b2d221c05 fix ecc point seralization 2014-02-27 23:35:24 -05:00
BrownBear
46bfcfe74d added missing files: romix.[hc]pp 2014-02-27 12:37:23 +01:00
BrownBear2
49ff83922b added romix kdf and cfb for aes 2014-02-26 12:05:17 +01:00
Tzadik Vanderhoof
0761d32d01 safer sha256 binary constructor 2014-02-24 02:08:48 -05:00
Tzadik Vanderhoof
57769e4df9 BSX-21 Import Bitcoin Private Key from String 2014-02-24 00:47:00 -05:00
Nicolas Wack
30ee9868e6 Fix compilation on mac os with clang/libc++ 2014-02-22 19:27:53 +01:00
batmaninpink
1e509fa1a9 added support for scrypt key derivation needed for multibit wallet support 2014-02-18 08:59:17 +01:00
Daniel Larimer
5178ca8c1a added api methods to encryption functions 2014-02-16 21:28:55 -05:00
Daniel Larimer
9b2190aa63 Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc into phoenix 2014-02-16 01:17:35 -05:00
Daniel Larimer
0843aa6652 adding raw serialization for unordered_map 2014-02-16 01:17:31 -05:00
dnotestein
5b103e5754 Add get_typename for std::vector<char> 2014-02-15 22:48:09 -05:00
dnotestein
32b7b02b15 Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc into phoenix 2014-02-15 17:34:53 -05:00
Daniel Larimer
2743b56b56 added utility to hide console echo for entering passwords 2014-02-15 14:06:35 -05:00
Daniel Larimer
ded475f45a upgraded to boost::signals2 because signals is deprecated 2014-02-15 01:52:19 -05:00
Daniel Larimer
0ecd66fa73 adding utility methods for getting home dir and app dir 2014-02-15 01:22:59 -05:00
Daniel Larimer
a80164645f Update tcp_socket listen on single endpoint 2014-02-14 20:32:23 -05:00
dnotestein
68281f4dc0 Added get_typename function needed by new leveldb database upgrading code (uint160 is stored in blockchain database). 2014-02-11 23:10:24 -05:00
Daniel Larimer
09c84c1731 fixes to build under clang++ 2014-02-06 03:22:09 -05:00
Daniel Larimer
23eead5eaa merge changes 2014-02-06 02:49:02 -05:00
Daniel Larimer
3fda653b45 small fixes 2014-02-06 02:47:09 -05:00
Daniel Larimer
0db28ec6de Merge pull request #3 from wackou/fix_clang_compile
Fix clang compile
2014-02-06 02:46:43 -05:00
vogel76
af77f4dc4b [BW]: [Fix] Fixed gcc compile errors 2014-02-01 14:41:02 +01:00
vogel76
21558dbd70 [BW]: [Ign] Fixed compile errors on MSVC. 2014-01-31 14:07:14 +01:00
Daniel Larimer
52a4a46cca std::hash supprot for sha256 2014-01-30 15:10:05 -05:00
Daniel Larimer
fa85f98844 Merge branch 'phoenix' of github.com:InvictusInnovations/fc into phoenix 2014-01-29 17:07:31 -05:00
Daniel Larimer
36b29d74c2 adding comparison operators 2014-01-29 17:07:25 -05:00
vogel76
d2eefb7ed4 [BW]: [Ign] #pragma warning enclosed into _MSC_VER to avoid gcc complaining
[BW]: [NIP] Added LLCONST and ULLCONST macros to safely declare large literals incl. setting its type and avoid gcc compile error this way.
2014-01-29 13:09:52 +01:00
vogel76
10a6e76375 [BW]: [Ign] Fixed compile errors (missing < operator on fc::enum_type
[BW]: [Ign] Eliminated some annoying compiler warnings.
2014-01-29 12:52:13 +01:00
batmaninpink
ccd2bbe7b2 expose aes_decrypt for use elsewhere 2014-01-20 15:17:39 +01:00
Nicolas Wack
36de4226d9 Removed unused duplicate file.
This functionality is now found in network/ip.hpp
2014-01-19 19:58:58 +01:00
Nicolas Wack
271781f78c Fix compilation with clang/libc++
The issue was that redeclaring the hash template in the code somehow seems to shadow the declaration that is done in <functional> and <memory> and afterwards the template specialization of the hash function seems to use our redefined template instead of libc++’s one (most likely due to the fact that libc++ uses an inline namespace inside std)
2014-01-19 19:30:42 +01:00
Daniel Larimer
fb2fddf25c update logger 2014-01-14 14:00:30 -05:00
Daniel Larimer
7d81035e14 fix coding standard violations 2014-01-14 03:56:15 -05:00
Daniel Larimer
d4e5d604a5 Merge branch 'phoenix' of github.com:InvictusInnovations/fc into phoenix 2014-01-14 03:51:20 -05:00
Daniel Larimer
c0727f30b0 adding variant support for unordered maps 2014-01-14 03:51:17 -05:00
vogel76
59f80e34d2 [BW]: [NIP] Further changes to get to work paths containing unicode characters:
- fc::path extended by method toNativeAnsiPath allowing to safely convert current unicode path into its ansi equivalent
- fc::path to_variant uses toNativeAnsiPath method instead of generic_string to avoid loss of data while serializing a path
- fc::mmap_struct_base::open should use toNativeAnsiPath method instead of generic_string to access ansi path
- fc::json::save_to_file should directly pass fc::path to underlying stream instead of generic_string.
2014-01-10 00:05:18 +01:00
vogel76
6261a25442 [BW]: [NIP] Support for unicode paths to avoid problems while accessing paths containing native characters. 2014-01-09 13:29:47 +01:00
vogel76
08ab455dff [BW]: [Fix] fc::task_base class member initialization. 2014-01-06 23:58:42 +01:00
Daniel Larimer
f618f3a10f updated ip serialization forwards 2014-01-04 01:21:11 +00:00
vogel76
c2de86ccd4 [BW]: [NIP] Implemented dedicated exception class (fc::db_in_use_exception) to be thrown when underlying database is already in use. 2014-01-03 17:00:07 +01:00
Daniel Larimer
8d65e5e265 adding trim method 2013-12-24 20:22:21 -05:00
Daniel Larimer
c6897c4dbf added method to get port 2013-12-22 00:10:03 -05:00
Daniel Larimer
fa07ec438f Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc into phoenix 2013-12-15 10:57:05 -05:00
dnotestein
d1d365beaf further attempt at fixing Linux compile error 2013-12-13 09:13:08 -05:00
dnotestein
2d0bdb8e7a attempt to fix Linux compile error, needs to be verified on a Linux build machine 2013-12-12 22:18:09 -05:00
dnotestein
8e47816c4e Fix for problem reported with Boost 1.55 (memory_order_consume removed?). Also added move constructors for future, this second change probably needs review. 2013-12-12 09:19:15 -05:00
Daniel Larimer
b8a9c77269 adding helper function to return uncompressed ecc pub key 2013-12-09 22:25:59 -05:00
Daniel Larimer
a68d22a699 various updates 2013-12-09 00:48:28 -05:00
Daniel Larimer
76b13a741a adding missing files 2013-11-24 13:00:21 -05:00
dnotestein
001c999316 Fix some forward sizes for Win64 2013-11-13 14:35:12 -05:00
Daniel Larimer
cf37cd776b update reflect 2013-10-22 22:02:55 -04:00
dnotestein
bacf98ddb8 don't try to build salsa.s (assembly language file) on windows, eliminate annoying warnings in optional.hpp 2013-10-10 22:19:01 -04:00
dnotestein
760c94d20f Untested popcnt code for Windows 2013-09-22 14:10:40 -04:00
Daniel Larimer
81c0290568 raw pack of fc::path 2013-09-21 22:48:50 -04:00
Daniel Larimer
3da6a03987 adding not equal operator to fc::ecc::public_key 2013-09-13 23:13:11 -04:00
Daniel Larimer
b644ce2b67 fix bug loading null pubkey from binary 2013-09-11 17:54:45 -04:00
Daniel Larimer
68b9fafe9a disable padding for aes_encoder and decoder 2013-09-05 22:09:12 -04:00
Daniel Larimer
8c95d62c9e two phase init of aes encoder/decoder 2013-09-05 19:02:10 -04:00
Daniel Larimer
be836e3e47 add stream-based aes decryption 2013-09-05 18:49:55 -04:00
Daniel Larimer
d30891f4af adding operators 2013-09-05 02:16:12 -04:00
Daniel Larimer
5d2e605747 adding array > compare 2013-09-04 17:58:35 -04:00
Daniel Larimer
9066e46b1b fix potential crashes by checking nullptr 2013-09-01 19:45:15 -04:00
Daniel Larimer
b615522217 add typedefs for forward compat 2013-08-31 13:56:59 -04:00
Daniel Larimer
5bf5cf9219 adding aes_load and aes_save methods 2013-08-31 13:12:55 -04:00
Daniel Larimer
8fc6f79dc9 adding operators to enum_type 2013-08-27 20:21:20 -04:00
Daniel Larimer
3acfe018b1 various updates 2013-08-25 01:24:07 -04:00
Daniel Larimer
6a1f42aba0 adding new crypto apis 2013-08-24 04:25:03 -04:00
Daniel Larimer
9410980885 various updates 2013-08-23 20:14:46 -04:00
Daniel Larimer
24768d2d26 fixed compile bugs for friend constructors 2013-08-19 01:46:28 -04:00
Daniel Larimer
9d79456cc5 update assignment and copy constructor templates for fc::optional 2013-08-18 23:41:53 -04:00
Daniel Larimer
8315e1bded added code to fix warnings and enhance readability 2013-08-18 22:44:48 -04:00
Daniel Larimer
c88ce7984e adding more helper methods to time and elliptic crypto 2013-08-15 19:36:54 -04:00
Daniel Larimer
105948ea65 json and variant bug fixes 2013-08-15 12:44:51 -04:00
Daniel Larimer
e7075f6b3a fix bugs with variant 2013-08-15 10:56:25 -04:00
Daniel Larimer
f954ff1a25 fix bugs with bigint 2013-08-14 01:11:48 -04:00
Daniel Larimer
786941fe69 defining lzma header 2013-08-13 17:13:25 -04:00
Daniel Larimer
311a9652d4 bug fixes and tests for aes 2013-08-13 13:57:39 -04:00
Daniel Larimer
e19c3327a0 adding aes encryption and openssl wrapper cleanup 2013-08-13 12:58:55 -04:00
Daniel Larimer
6c3b31873c linux port 2013-08-13 05:24:41 +00:00
Daniel Larimer
747d35d922 adding smaz compression utility function 2013-08-13 00:37:54 -04:00
Daniel Larimer
ec4d12f6a4 added additional operators 2013-08-12 14:42:54 -04:00
dnotestein
1171cf13cd Fix FC_ASSERT macro for MSVC 2013-08-11 12:12:45 -04:00
dnotestein
404cf8ae5c Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc into phoenix
Conflicts:
	CMakeLists.txt
	include/fc/ptr.hpp
2013-08-11 09:59:55 -04:00
dnotestein
94ce5cd9f2 more windows related changes, check what I was thinking with that BOOST1_51 when not in a hurry, maybe it should just be removed now 2013-08-10 22:11:59 -04:00
Daniel Larimer
1f03f67d1d added new elliptic curve crypto methods 2013-08-10 02:33:15 -04:00
Daniel Larimer
ef2b0453cd clean up tcp_server accept api, removing unused return value 2013-08-08 15:12:01 -04:00
Daniel Larimer
bd66f1c5af added time_point_sec(int32) constructor 2013-08-08 09:49:49 -04:00
Daniel Larimer
b5eb86e24c fix broken header reference 2013-08-08 09:49:37 -04:00
Daniel Larimer
7ff92d3746 added ability to query cancel flag from future 2013-08-06 12:45:49 -04:00
Daniel Larimer
fbadc5bdfa fix uninitialized variables in ecc::compact_signature (fc::array) and a few other places 2013-08-02 14:32:59 -04:00
Daniel Larimer
61f84777c4 fc::enum_type -> string 2013-07-30 15:04:17 -04:00
Daniel Larimer
e2e1d43dd4 fix enum_type to variant 2013-07-29 00:25:16 -04:00
Daniel Larimer
8a9d0c9e13 adding ripemd160 2013-07-28 10:49:45 -04:00
Daniel Larimer
c8839553c0 updated 128bit int math and bigint 2013-07-28 02:13:31 -04:00
Daniel Larimer
637372bbc2 unify city uint128 with new uint128 class 2013-07-26 23:26:51 -04:00
Daniel Larimer
29a1346d05 adding uint128 type 2013-07-26 23:20:06 -04:00
Daniel Larimer
382f741c73 added enhanced serialization of enums 2013-07-25 10:49:13 -04:00
Daniel Larimer
2b8b606d08 fix bugs with time_point_sec 2013-07-23 13:00:40 -04:00
Daniel Larimer
9173154160 enable reflecting empty structs 2013-07-23 13:00:18 -04:00
Daniel Larimer
4736e8e666 adding methods to detect multicast and public ip ranges 2013-07-23 01:07:19 -04:00
Daniel Larimer
1201d1c1f6 adding time_point_sec 2013-07-22 14:03:34 -04:00
Daniel Larimer
72a1c45905 more bigint operators 2013-07-19 23:50:04 -04:00
Daniel Larimer
3eae44103d additional time operations 2013-07-18 19:10:05 -04:00
Daniel Larimer
a792cfaca7 update save to file to take fc::path 2013-07-18 19:09:18 -04:00
Daniel Larimer
4ea60ef088 fix crashes in ecc handling with nullptr 2013-07-18 19:08:58 -04:00
Daniel Larimer
9117232e16 made fc::array comparable 2013-07-18 01:58:36 -04:00
Daniel Larimer
2ef8cfa06e fix bigint bugs 2013-07-17 20:55:36 -04:00
Daniel Larimer
0956cd26df adding std::hash support for fc::array 2013-07-17 15:00:13 -04:00
Daniel Larimer
87542eba25 adding city hash 2013-07-17 11:50:45 -04:00
Daniel Larimer
a0f41aa397 various updates and enhancements to crypto and network code 2013-07-17 02:01:35 -04:00
Daniel Larimer
a1c8138b38 made fc::ip::endpoint sortable 2013-07-15 15:59:12 -04:00
Daniel Larimer
57e5796839 clean up exception handling on asio / sockets 2013-07-14 17:58:27 -04:00
Daniel Larimer
f18e16cbc7 adding resize_file 2013-07-12 22:05:38 -04:00
Daniel Larimer
fa98cb6816 adding std::hash to fc::ip::endpoint 2013-07-12 01:21:53 -04:00
Daniel Larimer
d40636f5af removing header for defucnt super_fast_hash 2013-07-12 01:19:07 -04:00
Daniel Larimer
bb263d2903 fix build error 2013-07-11 19:08:55 -04:00
Daniel Larimer
79cd431503 Fixed constness of ecc::private_key call 2013-07-11 01:26:54 -04:00
Daniel Larimer
d5771acd3d added remote_endpoint() call to tcp_socket 2013-07-10 00:31:44 -04:00
Daniel Larimer
134fe467c5 bug fixes and adding missing files 2013-07-09 21:06:23 -04:00
Daniel Larimer
fbcdd4fa5e various bug fixes 2013-07-06 22:07:12 -04:00
Daniel Larimer
b8e08c97b2 adding support for std::set to variant/raw io 2013-07-05 20:29:36 -04:00
Daniel Larimer
a8ab947b20 fix sha224 serialization / sizeof 2013-07-05 20:29:07 -04:00
Daniel Larimer
4307054c9c remove print statments 2013-07-05 19:55:41 -04:00
Daniel Larimer
7e61059806 fix bugs in optional implementation 2013-07-05 19:48:59 -04:00
Daniel Larimer
58d950b56f Adding mmap_struct & features to fc::array
Fixed uninit bug in logger_config
2013-07-03 21:35:30 -04:00
Daniel Larimer
fcf2825b25 Merge branch 'phoenix' of github.com:bytemaster/fc into phoenix 2013-07-02 17:09:21 -04:00
Daniel Larimer
314eabb293 update elliptic curve crypto for deterministic key generation 2013-07-02 17:09:15 -04:00
Daniel Larimer
af9288f5c3 fix build 2013-07-02 16:42:52 -04:00
Daniel Larimer
5226987305 clean up fc::optional 2013-07-02 14:59:05 -04:00
Daniel Larimer
b59fe17562 Merge branch 'phoenix' of github.com:bytemaster/fc into phoenix
Remove fc::vector and fc::string
2013-06-27 14:45:11 -04:00
Daniel Larimer
b07aed4a22 Update use of fc::string and fc::vector. 2013-06-27 14:19:08 -04:00
Daniel Larimer
cd28770deb Updating crypto functions. 2013-06-27 14:18:02 -04:00
Daniel Larimer
726e25d537 adding sha224 2013-06-07 18:59:08 -04:00
Daniel Larimer
bf94caf864 adding variant support to sha1 2013-06-07 15:59:01 -04:00
Daniel Larimer
1f3e6739c6 switch to std::vector from fc::vector 2013-06-06 22:49:30 -04:00
Daniel Larimer
6563c12f88 bug fixes 2013-06-06 20:37:04 -04:00
Daniel Larimer
0fd0574c05 various updates to support bitshares 2013-06-06 19:20:51 -04:00
Daniel Larimer
639a0c795a Updates to crypto/fc 2013-06-06 14:45:55 -04:00
Daniel Larimer
59a121d64b Updating FC with changes from phoenix-int 2013-06-05 15:19:00 -04:00
Daniel Larimer
9909ef83b5 bug fixes 2013-04-25 21:06:33 -04:00
Daniel Larimer
5499d5bb30 Adding udp multicast support, filesystem::rename 2013-03-24 00:11:28 -04:00
Daniel Larimer
f765440760 adding sha256 2013-03-10 01:53:32 -05:00
Daniel Larimer
7b9a14918c merge latest changes 2013-03-01 18:56:06 -05:00
Daniel Larimer
97e45a64ea fix bugs for linux build 2013-02-09 17:41:44 -05:00
Daniel Larimer
25872b11b8 Updated fc::value implementation
Improved fc::value to use enum types instead of strings.
Moved code from header to cpp file
Added extra utility method to simplify syntax for generating key-value pairs for errors/logs.
Removed need to create copies when casting strings, arrays, or objects from values
2013-02-07 16:08:43 -05:00
Daniel Larimer
b527bbbab6 Factored console_appender into its own header/cpp
Added file_appender
Updated tests
2013-02-05 00:06:16 -05:00
Daniel Larimer
71ea16cf8b Adding updated logging system similar to log4
Updates to ssh client
Updated reflect enum
2013-02-04 23:08:48 -05:00
Daniel Larimer
b7f1f7bdc7 adding close to rpc con, adding typedfes, fix detail error reporting 2013-02-04 11:13:02 -05:00
Daniel Larimer
dff6b72ace various bug fixes 2013-02-03 21:11:08 -05:00
Daniel Larimer
ecd5fd4b96 adjust formatting for better line-wrapping 2013-02-03 21:09:43 -05:00
Daniel Larimer
68e949a699 fix bugs 2013-01-30 23:36:51 -05:00
Daniel Larimer
f19821dae1 fix timestamp in error reports 2013-01-28 11:47:33 -05:00
Daniel Larimer
763ae69982 error handling enhancements, recursive var subst 2013-01-27 22:45:46 -05:00
Daniel Larimer
c3659eedfc fix json pretty print, added value::clear 2013-01-27 15:28:54 -05:00
Daniel Larimer
5c21d1d45c adding flush to mapped_region 2013-01-27 10:24:11 -05:00
Daniel Larimer
9858e553bf various updates to path and error substitution 2013-01-25 13:19:23 -05:00
Daniel Larimer
cc44e8bbe0 time /string conversion 2013-01-20 15:44:16 -05:00
Daniel Larimer
21ef2d11e9 fix build, added is_array and is_object to value 2013-01-15 13:08:00 -05:00
Daniel Larimer
2476ae450d factored out the substitute code from the error report to_string code 2013-01-15 12:05:43 -05:00
Daniel Larimer
68e50ee166 update json parsing to be more flexible and report better errors 2013-01-11 14:13:47 -05:00
Daniel Larimer
38f97ef61a fix json rpc server memory leak 2013-01-11 09:12:53 -05:00
Daniel Larimer
a5a88a50c7 Merge branch 'master' of github.com:bytemaster/fc 2013-01-04 12:35:26 -08:00
Daniel Larimer
6742f63256 update tcp / http error reporting 2013-01-04 12:35:17 -08:00
Daniel Larimer
63c0440a80 fix fc::string::rfind default args 2012-12-31 11:06:10 -05:00
Daniel Larimer
3898985bbe various bug fixes / improvements 2012-12-30 18:14:27 -05:00
Daniel Larimer
682c005350 fixes 2012-12-29 12:00:19 -05:00
Daniel Larimer
42cf0e62a8 bug fixes / windows port 2012-12-20 15:39:35 -05:00
Daniel Larimer
73f94bcebe various updates 2012-12-19 12:23:12 -05:00
Daniel Larimer
161ce54cb8 windows port 2012-12-18 14:37:14 -05:00
Daniel Larimer
afbbf4e8db fix cin crash 2012-12-18 14:08:40 -05:00
Daniel Larimer
9cd52de119 adding time_io + switch to pragma once for datastream.hpp 2012-12-16 23:43:50 -05:00
Daniel Larimer
6471249bb8 adding support for more value serialization 2012-12-16 20:13:09 -05:00
Daniel Larimer
12b637970e update pub/priv key to/from value conversion 2012-12-16 18:33:56 -05:00
Daniel Larimer
efca814f0b bug fixes and improvements 2012-12-16 00:31:43 -05:00
Daniel Larimer
9a8767a645 Fixed error_report to_string
Updated fc::datastream and base64 to use error_report
Added url to cmake lists
various other bug fixes
2012-12-15 10:26:03 -05:00
Daniel Larimer
8612a98149 Merge branch 'master' of github.com:bytemaster/fc 2012-12-15 09:42:03 -05:00
Daniel Larimer
4be0f82dc9 adding url 2012-12-15 09:41:55 -05:00
Daniel Larimer
47da9e06f9 adding missing file 2012-12-14 20:05:09 -05:00
Daniel Larimer
8c39a39dd6 implemented http server 2012-12-13 21:05:44 -05:00
Daniel Larimer
e42af7c066 fc::error_report to fc::exception_ptr to enable inter-thread, inter-process error reports 2012-12-13 13:57:49 -05:00
Daniel Larimer
cf10bac3db add error_report::to_string and to_detail_string 2012-12-13 13:08:25 -05:00
Daniel Larimer
eeee86be6b clean up error handling 2012-12-13 12:25:12 -05:00
Daniel Larimer
c885981c65 fixes to http/tcp server 2012-12-12 22:08:32 -05:00
Daniel Larimer
8e1b99f40c Merge branch 'master' of github.com:bytemaster/fc 2012-12-12 15:56:52 -05:00
Daniel Larimer
949095ab00 updates... 2012-12-12 15:56:48 -05:00
Daniel Larimer
7ca7aede5f implementing fc::absolute for path 2012-12-12 13:26:41 -05:00
Daniel Larimer
b35f6880c6 advanced error reporting / stack capture 2012-12-12 12:31:21 -05:00
Daniel Larimer
74709a4983 bug fixes 2012-12-12 11:23:38 -05:00
Daniel Larimer
44ea53407b fix for windows 2012-12-05 11:04:10 -05:00
Daniel Larimer
e33e78ce51 port to windows 2012-12-03 14:51:31 -05:00
Daniel Larimer
0995ce7e31 bug fixes 2012-12-02 16:46:28 -05:00
Daniel Larimer
2e6bd7253f implemented file system directoriy iterator / fixed raw packing / datastream exceptions 2012-12-02 12:35:05 -05:00
Daniel Larimer
1a5e10ee26 add tmp/unique dir wrapper for boost filesystem 2012-11-26 14:16:49 -05:00
Daniel Larimer
5fa8a60aeb adding connection func 2012-11-26 10:40:44 -05:00
Daniel Larimer
7981c2fb45 fix bugs 2012-11-24 19:39:19 -05:00
Daniel Larimer
55456d34ce added additional members on vector 2012-11-24 15:49:26 -05:00
Daniel Larimer
4812477ea6 numerous bug fixes 2012-11-24 13:02:23 -05:00
Daniel Larimer
3fb9857504 handle void methods 2012-11-23 17:35:07 -05:00
Daniel Larimer
0f486366d8 fix warning 2012-11-23 17:21:17 -05:00
Daniel Larimer
5719fa0e05 Merge branch 'master' of github.com:bytemaster/fc 2012-11-23 17:18:43 -05:00
Daniel Larimer
8bba5382ed fix http request 2012-11-17 17:43:34 -05:00
Daniel Larimer
8cbbf8994c updates for ssh / json rpc 2012-11-16 17:13:12 -05:00
Daniel Larimer
9edcfcf947 Merge branch 'master' of github.com:bytemaster/fc 2012-11-16 12:40:35 -05:00
Daniel Larimer
2311a1f476 updates to stream, optional, string, and actor 2012-11-16 12:40:28 -05:00
Daniel Larimer
cc4e1f1b52 Merge branch 'master' of github.com:bytemaster/fc 2012-11-15 19:15:19 -05:00
Daniel Larimer
23f89f0655 added content-type header to http_connection 2012-11-15 19:15:11 -05:00
Daniel Larimer
ba4eb96d88 adding fstream, fix bugs 2012-11-15 12:37:56 -05:00
Daniel Larimer
34a723cf7a Merge branch 'master' of github.com:bytemaster/fc 2012-11-15 11:55:38 -05:00
Daniel Larimer
6bf25ae8e7 fix json_rpc_errorobj 2012-11-15 11:55:36 -05:00
Daniel Larimer
55b0daa8aa updating value casting for vectors 2012-11-12 21:45:41 -05:00
Daniel Larimer
9225ab4726 error object 2012-11-11 22:05:49 -05:00
Daniel Larimer
1cb036ae63 fixes 2012-11-11 22:04:24 -05:00
Daniel Larimer
69114cabd7 various bug fixes 2012-11-09 01:36:23 -05:00
Daniel Larimer
c8b75ac96b named parameter for json-rpc 2012-11-09 00:31:39 -05:00
Daniel Larimer
914b8b2d3e removed dependency on varidic templates...
eliminate fc::function for now..
2012-11-08 23:06:39 -05:00
Daniel Larimer
39436c7021 ssh remote process exec 2012-11-08 22:02:07 -05:00
Daniel Larimer
30b3f75fab fix ssh generic paths 2012-11-08 09:44:27 -05:00
Daniel Larimer
98f4b7026d multi-param json-rpc, fix multi-request 2012-11-07 22:25:42 -05:00
Daniel Larimer
031e2db4db Json RPC works
- adding call_fused() for tuple + functor
- fixed json handling of true,false, and null
- cast from value to tuple
2012-11-07 22:14:00 -05:00
Daniel Larimer
a6541b825a json rpc updates, tcp server/client support 2012-11-05 23:34:58 -05:00
Daniel Larimer
6b14a176d0 adding basic ssh support, updating wait on any 2012-11-01 00:23:06 -04:00
Daniel Larimer
ca1d78b29f fix headers 2012-10-29 19:52:29 -04:00
Daniel Larimer
bd6a840e47 implemented json stream connection 2012-10-29 19:50:49 -04:00
Daniel Larimer
5dcb2ea992 updated json rpc to factor out stream connections 2012-10-29 17:57:34 -04:00
Daniel Larimer
e8d4297f89 adding value compare to nullptr 2012-10-29 17:55:33 -04:00
Daniel Larimer
9adbe96079 adding rpc server methods 2012-10-29 14:06:58 -07:00
Daniel Larimer
d4554ca029 updates for arm 2012-10-29 13:19:17 -07:00
Daniel Larimer
4ed6a02c39 Merge branch 'master' of github.com:bytemaster/fc 2012-10-26 23:15:38 -04:00
Daniel Larimer
9af6c22f30 expanded support for more args in tuple + rpc 2012-10-26 17:13:42 -04:00
Daniel Larimer
a819694d85 fix undefined methods 2012-10-26 01:18:53 -04:00
Daniel Larimer
4f146b93f1 fix bugs caught by clang++ 2012-10-26 01:11:35 -04:00
Daniel Larimer
413f741ac8 adding fc::process 2012-10-26 01:03:21 -04:00
Daniel Larimer
ff226f9df4 adding json-rpc client/connection 2012-10-26 01:03:01 -04:00
Daniel Larimer
b568936c5e adding tuple support to value 2012-10-26 01:00:06 -04:00
Daniel Larimer
27abae9d01 adding tuple impl 2012-10-26 00:59:30 -04:00
Daniel Larimer
c123fb39c2 updated io stream, simplified interface, faster cin 2012-10-26 00:58:29 -04:00
Daniel Larimer
4aad422411 Implemented basic mace::stub with fast compiles!! 2012-10-25 02:45:27 -04:00
Daniel Larimer
d36d7f8bc9 Merge branch 'master' of github.com:bytemaster/fc 2012-10-24 22:25:09 -04:00
Daniel Larimer
5f0bb4db43 Adding fast compiling boost::function replacement 2012-10-24 22:24:56 -04:00
Daniel larimer
70ee8caffe added 201 reply status 2012-10-24 01:58:17 -04:00
Daniel Larimer
fb6e18ec7b Implemented http connection + shared_impl
Shared Impl provides Java/C# style reference semantics for C++ types.
2012-10-24 00:54:03 -04:00
Daniel Larimer
f3680c3183 updates and fixes 2012-10-21 20:54:52 -04:00
Daniel Larimer
3d56a96d4e major updates to stream,reflect,value,and json
- removed polymorphic reflection, made static_reflect default because
  there are cases such as deserializing an array that you need more
  information than the runtime reflection can provide such as the
  ability to resize arrays and know the array content type.

- refactored iostream, sstream, fstream to be much simpler, fewer
  indirections, and fixed getline.

- json parsing works using code from mace.
- value is reimplemented based upon mace::rpc::value and no longer uses
  the runtime reflection that was removed.

- moved the typename utility to its own header
2012-10-21 02:28:59 -04:00
Daniel Larimer
62f7d99b6e update to time 2012-10-17 22:44:21 -04:00
Daniel Larimer
1de7c609fa tcp_socket::connect 2012-10-16 21:48:09 -04:00
Daniel Larimer
c174a93ffb added std::string conversion for fc::string 2012-10-09 23:21:41 -04:00
Daniel Larimer
3f73d25e44 various updates 2012-10-09 21:40:29 -04:00
Daniel Larimer
7c4b94f6e4 adding put to sha1 encoder 2012-09-30 17:02:18 -04:00
Daniel Larimer
e5c3f49ff8 remove prints 2012-09-30 17:01:54 -04:00
Daniel Larimer
47ce0b5fdc adding base58 support from bitcoin 2012-09-30 17:01:14 -04:00
Daniel Larimer
30f2946195 adding tcp_socket 2012-09-27 19:48:48 -04:00
Daniel Larimer
9ef51e7fd9 adding array packing 2012-09-25 23:20:35 -04:00
Daniel Larimer
c2b84e8f84 adding array type 2012-09-25 23:20:25 -04:00
Daniel Larimer
5877435927 fixed bugs 2012-09-25 17:45:28 -04:00
Daniel Larimer
ee55a08ab0 remove print 2012-09-23 23:59:39 -04:00
Daniel Larimer
98675754d8 remote prints 2012-09-23 19:38:42 -04:00
Daniel Larimer
4e42769366 adding dynmaic_poitner_cast + fixed includes 2012-09-23 17:20:03 -04:00
Daniel Larimer
dc91979409 fix schedule sort order 2012-09-23 02:01:27 -04:00
Daniel Larimer
0d5afe86d9 fixed thread::schedule 2012-09-22 21:26:13 -04:00
Daniel Larimer
7f68de063c added += time operations 2012-09-21 19:31:51 -04:00
Daniel Larimer
8b998caa1b adding program opts, shared mem, raw packing, varint, and more 2012-09-17 23:04:42 -04:00
Daniel Larimer
249dcd05ee reverted to old log() method to accelerate compile times 2012-09-15 22:31:56 -04:00
Daniel Larimer
66838956dd removed boost exception from header, shaved 15 seconds off of build time (33%) 2012-09-14 22:47:37 -04:00
Daniel Larimer
c12ac793b3 updated filesystem and exception api 2012-09-14 00:56:20 -04:00
Daniel Larimer
766f44e629 fix shared ptr bugs 2012-09-14 00:05:08 -04:00
Daniel Larimer
d82dc3a782 added hash template func 2012-09-13 19:00:21 -04:00
Daniel Larimer
e4fbbe52b0 revert to std types 2012-09-10 23:57:11 -04:00
Daniel Larimer
ac7ca49af5 clean up prints 2012-09-10 22:33:09 -05:00
Daniel Larimer
90f9a1f04d debug 2012-09-10 22:13:31 -05:00
Daniel Larimer
2bb9a4fa38 switch back to mace::log which is slower... due to crash in linux 2012-09-10 22:12:56 -04:00
Daniel Larimer
6a2b95f8c0 adding additional scrypt functions to fc 2012-09-10 20:15:35 -04:00
Daniel Larimer
f90a57ba40 ports for gcc-4.6, lack of template alias 2012-09-10 00:48:08 -05:00
Daniel Larimer
c7ce00202a added udp connect method / local ip lookup 2012-09-09 23:54:11 -04:00
Daniel Larimer
e7a6256c8b fix bugs 2012-09-09 21:44:57 -04:00
Daniel Larimer
c5b4069abd fixed scheduler deleting retainable 2012-09-09 19:44:49 -04:00
Daniel Larimer
bebe2d9146 added thread name + formating to log 2012-09-09 11:34:26 -04:00
Daniel Larimer
297b073c94 fix major bugs 2012-09-09 11:12:15 -04:00
Daniel Larimer
40bec5e112 adding signals / asio 2012-09-09 00:25:43 -04:00
Daniel Larimer
018609fafa moving more functions from mace to fc 2012-09-08 23:46:19 -04:00
Daniel Larimer
460da34801 adding more features from cmt 2012-09-08 17:37:25 -04:00
Daniel Larimer
9245b69202 adding bigint 2012-09-08 15:05:47 -04:00
Daniel Larimer
34e33d058b adding sha1 and hex methods... 2012-09-08 02:41:28 -04:00
Daniel Larimer
9041b9bff4 Initial checkin of FC code. 2012-09-07 22:50:37 -04:00