Eric Frias
976bbce668
When locking a mutex, ensure the task has a context before attempting to lock.
2014-08-25 18:44:15 -04:00
Eric Frias
d188b138d6
Allow fc::canceled_exception to pass through places where we were catching and ignoring all fc::exceptions
2014-08-25 18:43:12 -04:00
Eric Frias
27096f15a7
Log the names of tasks to the log file (now contains thread_name:task_name}
2014-08-24 18:33:05 -04:00
Eric Frias
198d858d59
Wrap boost exceptions in fc exceptions for a few socket operations that can throw
2014-08-24 14:47:01 -04:00
Eric Frias
578527626c
Support GNTP password authentication
2014-08-21 19:32:56 -04:00
Eric Frias
156a7cc4b4
Allow setting hostname
2014-08-21 16:14:08 -04:00
Eric Frias
362884fc52
Import GNTP notification code
2014-08-21 15:21:48 -04:00
Nathan Hourt
9e75d47ba3
Fix to an issue causing a thread to exit if any fiber therein self-cancels
2014-08-21 14:36:29 -04:00
Daniel Larimer
8468f392ce
default to_string conversion is now fixed
2014-08-13 16:06:42 -04:00
Eric Frias
92d29ac657
Prevent crash at shutdown rescheduling NTP task
2014-08-12 15:19:44 -04:00
Eric Frias
978de7885a
Add a macro to check if a task that shouldn't yield actually yields.
2014-08-02 19:43:28 -04:00
Daniel Larimer
6e31ffd963
Merge branch 'master' of https://github.com/InvictusInnovations/fc
2014-08-01 17:21:24 -04:00
dnotestein
7cc69f3bb7
Set canceled flag in task's context object so that we cancel out of active tasks when they try to resume. Wrap a try-catch block around tcp and udp resolve requests to convert any non-fc exceptions to fc exceptions. Minor change to clarify design intent that request_time_task should always be running in _ntp_thread.
2014-08-01 11:31:36 -04:00
PaulEU
eae493a8c1
Remove unnecessary code from init_openssl after update new OpenSSL package.
2014-07-29 23:44:47 +02:00
Daniel Larimer
3ccbe26dd5
adding aes exception
2014-07-29 13:54:50 -04:00
Vikram Rajkumar
a23f3a86be
Add missing integer variant conversions
2014-07-28 22:36:47 -04:00
Eric Frias
d847f6469a
Allow us to require assigning descriptions to all async tasks to aid in debugging
2014-07-27 17:37:21 -04:00
dnotestein
9e320a3db8
Add descriptions for a bunch of async tasks, remove logging during thread::quit to avoid crashes for now until we cleanup thread quit code
2014-07-27 00:09:15 -04:00
Vikram Rajkumar
3be05ef822
Merge branch 'master' of github.com:InvictusInnovations/fc
2014-07-26 22:29:22 -04:00
Vikram Rajkumar
48837f3116
Add time_point_sec::to_iso_{extended_}string()
2014-07-26 21:05:11 -04:00
Eric Frias
b460fd6b41
Cleanup all async tasks on exit, thread safety, work in progress.
2014-07-26 18:22:38 -04:00
Eric Frias
600ae24657
separate one try/catch into two blocks during file_appender destructor
2014-07-26 15:05:26 -04:00
Eric Frias
c208a968b2
Fix ntp on win32
2014-07-25 14:40:47 -04:00
dnotestein
34296fbb4a
Eliminate local variable that was shadowing data member variable stack_ctx in context object, which resulted in an assert when the context object was destructed.
2014-07-24 15:18:53 -04:00
Nathan Hourt
a254e5ff28
Merge branch 'master' of github.com:InvictusInnovations/fc
2014-07-23 11:59:48 -04:00
Nathan Hourt
523fa56d88
Bugfix: Incorrect ordering of newline and carriage return in HTTP server
...
The HTTP server was printing "\n\r" at the end of lines in the response
headers, which is invalid and caused some HTTP clients to detect an end
to the headers after the first header line.
The server now prints the proper "\r\n" sequence, which is parsed
correctly by clients.
2014-07-23 11:56:57 -04:00
PaulEU
4890351b34
Added OpenSSL configuration file path. (qt_wallet issue #10 Some clients on Windows 7 quit/crash on start)
2014-07-23 00:18:09 +02:00
Daniel Larimer
6ef73a4198
reduce default stack size by 50% to 4x default from 8x
2014-07-17 23:03:23 -04:00
Daniel Larimer
eed62c8338
sockets now wait for any pending write or read operations to finish before destructing
2014-07-17 17:03:25 -04:00
Daniel Larimer
01202aa709
adding space to exception message
2014-07-16 14:20:36 -04:00
Eric Frias
b6f8570c35
Lock mutex during more of the log rotation process (attempting to prevent crashes that have been seen while logging at the same time as log rotation)
2014-07-16 13:39:14 -04:00
grzegorzs
06fe9e0303
[GS] Fix types u_int32_t to uint32_t etc. - continued
2014-07-15 14:20:42 +02:00
Vikram Rajkumar
e442b29f6e
Fix scrypt
2014-07-14 13:40:33 -04:00
Eric Frias
a034239313
Add missing include
2014-07-07 12:36:34 -04:00
Eric Frias
62ea4ae9c3
Add mutexes to make OpenSSL thread safe
2014-07-07 12:22:01 -04:00
Vikram Rajkumar
18611eccb9
Fix log rotation scheduling bug
2014-07-05 16:22:25 -04:00
Daniel Larimer
ace06d775c
support for 8 param rpc calls
2014-07-04 17:23:47 -04:00
Vikram Rajkumar
c9c56ffbb6
Merge branch 'master' of https://github.com/InvictusInnovations/fc
2014-07-03 17:24:14 -04:00
Vikram Rajkumar
e9b1b8ec2e
Use a separate thread for log compression
2014-07-03 17:24:06 -04:00
Eric Frias
c020913cb8
Make process::exec take an 'int' for the bitmask of launch options instead of an enum to make it more clear that it's a bitmask (and avoid a cast)
2014-07-03 09:30:50 -04:00
Vikram Rajkumar
adf8c10ee5
Fix Linux compilation
2014-07-03 02:55:30 -04:00
Vikram Rajkumar
223f0005f5
Hardlink from most recent log to original filename during rotation
2014-07-03 02:55:30 -04:00
Vikram Rajkumar
b522f12a0e
Use ISO format timestamps for rotated log files
2014-07-03 02:17:03 -04:00
Vikram Rajkumar
b1e677bcee
Implement optional LZMA compression for rotated logs
2014-07-03 01:27:58 -04:00
Vikram Rajkumar
cc1ef61cd6
Logs are now rotated on startup if rotation is enabled
2014-07-03 01:16:46 -04:00
Vikram Rajkumar
39c7f05ea9
Implement LZMA file decompression
2014-07-03 00:01:02 -04:00
Vikram Rajkumar
f56dd6d208
Implement LZMA file compression
2014-07-02 23:28:43 -04:00
Vikram Rajkumar
c0187865ea
Implement log file rotation
2014-07-02 17:36:21 -04:00
Daniel Larimer
aab316d190
update time pretty print, adding space after year
2014-07-01 15:20:58 -04:00
Daniel Larimer
13da4b0d6a
improve socket error handling
2014-06-30 10:50:50 -04:00
Eric Frias
160da5dbb9
Fix invalid iterator comparison in process_canceled_tasks when canceling the only task in task_sch_queue
2014-06-29 18:50:05 -04:00
Daniel Larimer
c33acad0ab
fix udt sockets, actually enable non blocking operation
2014-06-29 01:38:46 -04:00
Daniel Larimer
892df5c0b7
canceled scheduled tasks return immediately when waited upon
2014-06-28 21:46:10 -04:00
Daniel Larimer
ffa617183e
if a task is canceled before it is run, then it will throw a canceled exception
2014-06-28 21:08:15 -04:00
Daniel Larimer
d2072e9d3a
updates to thread / udt socket
2014-06-26 20:10:56 -04:00
Daniel Larimer
8670a4722f
Merge branch 'master' of https://github.com/InvictusInnovations/fc
2014-06-26 20:10:37 -04:00
Eric Frias
560b107e58
Fix signed/unsigned warnings
2014-06-26 15:51:01 -04:00
Eric Frias
862e7bb5d3
fix a few 64-bit to 32-bit conversion warnings
2014-06-26 15:50:40 -04:00
Daniel Larimer
bb40828953
Merge branch 'master' of https://github.com/InvictusInnovations/fc
2014-06-26 11:25:12 -04:00
Daniel Larimer
5529b300d9
implemented working UDT socket/server
2014-06-26 11:25:07 -04:00
Eric Frias
21d1ce2067
Merge branch 'phoenix'
2014-06-26 10:03:42 -04:00
Eric Frias
78af258510
Remove include that's missing from win32
2014-06-26 10:03:02 -04:00
Daniel Larimer
5c98d7864f
Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc
2014-06-26 08:48:12 -04:00
Daniel Larimer
456c81df27
fix potential errors in NTP caused by running in main thread
2014-06-25 23:32:09 -04:00
Daniel Larimer
d20b9d049b
start work on udt socket class for fc
2014-06-25 18:34:04 -04:00
Eric Frias
2c5c1655a6
Add counters to the TCP rate limiter to measure actual upload and download speed, and allow the caller to set how bursty they want the connection to be.
2014-06-25 18:16:58 -04:00
dnotestein
87a93940d0
Display times in UTC for fc logging.
2014-06-24 16:29:59 -04:00
Daniel Larimer
4c59f48aa1
fix log_message variant conversion bug that stomped methodname
2014-06-24 12:12:30 -04:00
Eric Frias
331e6aac7d
Convert networking exceptions to fc::exceptions to properly catch them in NTP code (fixes at least some of the shutdown crashes)
2014-06-20 12:22:37 -04:00
Eric Frias
2b3728af37
Add -> for directory_iterator
2014-06-20 10:38:21 -04:00
Daniel Larimer
c7013d3eea
update log_message to take std::string rather than const char*
2014-06-19 11:29:57 -04:00
Eric Frias
9002b02469
Fix ambiguous abs() call in get_approximate_relative_time_string()
2014-06-17 15:45:16 -04:00
Daniel Larimer
b93fe7a50c
commenting out elog in connection refused from fc
2014-06-17 15:43:07 -04:00
Daniel Larimer
b74a9a82bb
update display for delta time in future
2014-06-17 11:12:15 -04:00
dnotestein
bf9bd5a9f6
Increase task context stack from 64K to 8*64K to prevent the stack from overflowing in the p2p code.
2014-06-16 16:59:37 -04:00
Daniel Larimer
bb3c3ec118
fix NTP flooding issue
2014-06-16 14:04:36 -04:00
Eric Frias
6898484321
Remove a few annoying unreferenced variables
2014-06-16 12:03:20 -04:00
Daniel Larimer
b7ad720647
updating ntp service
2014-06-16 11:17:29 -04:00
Eric Frias
888a01881a
Change the function that returns relative time strings to generate times relative to an arbitrary clock instead of always using time_point::now(). (this is so we can use blockchain::now() instead).
...
Remove unused include.
2014-06-15 14:16:22 -04:00
Eric Frias
a1604e3708
Fix NTP on Win32
2014-06-12 08:40:24 -04:00
Daniel Larimer
4385bbe49a
serialization and copy support for exceptions
2014-06-12 02:23:52 -04:00
Daniel Larimer
36d657fb62
enhance console appender
2014-06-11 23:41:10 -04:00
Daniel Larimer
e2e416bf80
Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc into phoenix
2014-06-11 21:46:31 -04:00
Daniel Larimer
cb69e2385b
exception updates
2014-06-11 21:46:26 -04:00
Eric Frias
f01d25788e
Fix 32-bit error in uint128 to bigint conversion, move bswap_64 into its own header file
2014-06-11 17:32:59 -04:00
Daniel Larimer
454da57a32
adding base58 helper
2014-06-11 17:28:47 -04:00
Eric Frias
8ef1c4e0a7
Add include for ntohl() on linux
2014-06-11 13:56:03 -07:00
Eric Frias
59d3e80fb7
Add include to fix win32 build
2014-06-11 16:32:47 -04:00
Daniel Larimer
75ec020227
fix ntp
2014-06-11 15:30:30 -04:00
Daniel Larimer
0c64d208d9
adding ntp support to fc
2014-06-11 15:17:28 -04:00
Daniel Larimer
51de9e6abf
improve error printing
2014-06-09 22:21:46 -04:00
HackFisher
9b3b7993ee
add unknown host exception
2014-06-08 16:53:23 -04:00
Daniel Larimer
8e3163d4fb
extra helper variant constructor
2014-06-07 22:58:19 -04:00
Daniel Larimer
fe997232f6
fix url parsing bug
2014-06-07 18:53:39 -04:00
Daniel Larimer
b379449cda
fix bug where default logging is optimized out in release builds
2014-06-07 17:34:34 -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
0a2a9ec25b
check for EOF while parsing quoted strings
2014-06-05 11:54:19 -04:00
Daniel Larimer
dd32afd0c3
adding better exception handling on lexical casts
2014-06-05 11:31:42 -04:00
PaulEU
ab31df2e9f
Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc into phoenix
2014-06-05 10:01:16 +02:00
PaulEU
7b2361518c
Use _putenv instead of putenv because on some Windows machines putenv doesn't work properly.
2014-06-05 10:00:50 +02:00
Daniel Larimer
2e109d18c9
Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc into HEAD
2014-06-04 22:18:39 +00:00
Daniel Larimer
df2d013bad
fix exceptions when parsing json
2014-06-04 22:17:21 +00:00
Eric Frias
ff04a5a8fb
Catch std::ios_base::failure exceptions, which mean EOF when reading JSON from a std::stringstream
2014-06-04 16:55:26 -04:00
Eric Frias
a6ca7042da
add to/from variant for fc::microseconds
2014-06-04 13:51:50 -04:00
Eric Frias
8347a7b7fa
Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc into phoenix
2014-06-03 19:13:52 -07:00
Eric Frias
d77bdcd3e6
Make HTTP headers case insensitive
2014-06-03 19:12:53 -07: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
73dd2d68ea
fix for mac
2014-06-03 11:16:29 -04:00
Daniel Larimer
5a0f996333
adding pretty print
2014-06-03 11:09:15 -04:00
vogel76
57e1d60257
[BW]: [Fix] Looks like OpenSSL_config argument doesn't refer to configuration file path, which can be passed only through environment variable unfortunetly.
2014-06-03 17:04:34 +02:00
Eric Frias
2220920126
Fix signed bigint conversion (probably never used)
2014-06-02 17:19:36 -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
Eric Frias
7dde0a705d
Add 5 and 6 argument versions of json rpc call functions
2014-05-29 15:54:40 -04:00
Eric Frias
07f131336f
Convert boost exceptions caught while parsing fc::time_point strings into fc::exception
2014-05-29 15:54:39 -04:00
dnotestein
54c66bbb86
Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc into phoenix
...
Conflicts:
src/crypto/aes.cpp
2014-05-27 09:44:54 -04:00
dnotestein
d1c3637a9f
Fix variable name (input parameter to function is length of cipher text, not decoded plain text) and function comments (looks like it was some copy/paste error).
2014-05-27 09:40:23 -04:00
Daniel Larimer
ac03a71f3d
improve variant cast error reporting
2014-05-25 14:18:26 -04:00
Daniel Larimer
9f6b52eac2
fix build on OS X
2014-05-23 21:54:59 -04:00
Eric Frias
b9050b589d
Merge branch 'phoenix' into tcp_rate_limiting
2014-05-23 18:04:05 -04:00
Vikram Rajkumar
375aa098eb
Merge github.com:vikramrajkumar/fc into phoenix
2014-05-22 03:55:45 -04:00
Daniel Larimer
e6007b88cd
Merge pull request #26 from HackFisher/patch-3
...
Fix issue #25
2014-05-21 09:53:45 -04:00
Vikram Rajkumar
379b0791e3
Merge github.com:vikramrajkumar/fc into phoenix
2014-05-20 19:03:01 -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
Daniel Larimer
17aefe29de
using explicit bool operator for optional
2014-05-20 11:25:31 -04:00
HackFisher
174096c3ab
Fix issue #25
...
eofbit std exception is replaced by eof_exception, checked in peek(), so no need to throw std exception when encounter EOF.
2014-05-20 19:17:19 +08:00
Daniel Larimer
8a8ff28221
adding '/' to token chars to support paths
2014-05-19 16:59:01 -04:00
Eric Frias
c4770f0819
Restore correct parsing of json keywords (true/false/null)
2014-05-19 14:12:49 -04:00
Vikram Rajkumar
6b455ab850
Fix typos
2014-05-19 02:52:21 -04:00
Daniel Larimer
fd00bddcb4
update logging to create parent directory if it does not exist
2014-05-17 16:38:32 -04:00
Vikram Rajkumar
e8326ca66c
Make objectFromStream always throw parse_error_exception when throwing
2014-05-17 03:30:49 -04:00
Daniel Larimer
8c370b06e6
update json error handling
2014-05-15 17:44:38 -04:00
Daniel Larimer
7078ebf382
expanding token chars
2014-05-15 14:07:19 -04:00
Daniel Larimer
c27ea9ba13
fix bugs parsing json tokens
2014-05-15 13:52:21 -04:00
Daniel Larimer
271fe8b909
found major bug in parsing, fixed it
2014-05-15 13:35:49 -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
50ac462471
Enable SO_REUSEPORT on Linux as well as OS X
2014-05-14 16:02:41 -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
Eric Frias
eb501387e8
Set the SO_REUSEPORT flag on OS X whenever we set the SO_REUSEADDR
2014-05-13 21:14:40 -07:00
Daniel Larimer
8d4fccba5f
update pretty print save to file
2014-05-11 20:33:08 -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
62b479568e
Get rate limiting mostly working
2014-05-08 15:13:49 -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
valzav
102e0c4ab8
fixed a bug in configure_logging that made adding more than one logger impossible
2014-05-07 20:58:54 -07:00
valzav
687eaa98f2
Merge remote-tracking branch 'upstream/phoenix' into http-server-improvements
2014-05-07 20:48:23 -07: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