Luke Dashjr [Mon, 14 May 2012 15:56:15 +0000 (15:56 +0000)]
Use BIP22 "obj" transactions when possible
Backward compatibility with hex-only and gmp_fees retained for now
Luke Dashjr [Mon, 14 May 2012 15:15:09 +0000 (15:15 +0000)]
Attempt upstream BIP22 getmemorypool requests
Luke Dashjr [Sun, 13 May 2012 15:58:41 +0000 (15:58 +0000)]
Backward-compatible support for new BIP 22 getmemorypool longpolling
Luke Dashjr [Sun, 13 May 2012 15:52:14 +0000 (15:52 +0000)]
Wait until JSONRPCServer is initialized before starting MerkleMaker, so we can skip needless checks at runtime
Luke Dashjr [Sun, 13 May 2012 00:47:50 +0000 (00:47 +0000)]
Merge branch 'bugfix_check_path'
Luke Dashjr [Sun, 13 May 2012 00:47:08 +0000 (00:47 +0000)]
Bugfix: JSONRPCServer: Check that path is actually bytes before subscripting it
It's None when the request was invalid
Luke Dashjr [Sun, 13 May 2012 00:24:56 +0000 (00:24 +0000)]
Merge branch 'bugfix_example_ccmd'
Luke Dashjr [Sun, 13 May 2012 00:24:47 +0000 (00:24 +0000)]
Bugfix: config.py.example: example CoinbaserCmd echo needs -e, and doesn't need an extra \n on the end
Luke Dashjr [Fri, 11 May 2012 17:36:24 +0000 (17:36 +0000)]
Merge branch 'bugfix_notrim'
Conflicts:
merklemaker.py
Luke Dashjr [Fri, 11 May 2012 17:35:23 +0000 (17:35 +0000)]
Just log an error, rather than make invalid-due-to-missing-fees blocks, when perceived to be over size/sigop limits
Luke Dashjr [Wed, 9 May 2012 21:19:54 +0000 (21:19 +0000)]
RaiseRedFlags if upstream rejects a block
Luke Dashjr [Mon, 7 May 2012 16:35:54 +0000 (16:35 +0000)]
Merge branch 'bugfix_thr_sigusr1'
Conflicts:
eloipool.py
Luke Dashjr [Mon, 7 May 2012 16:34:07 +0000 (16:34 +0000)]
Bugfix: Use a new thread to handle SIGUSR1, in case the signal handler is called with locks held
Specifically, flushing stdout uses a lock, and when SIGUSR1 tries to write too it just blocked forever :(
Luke Dashjr [Sun, 6 May 2012 04:45:48 +0000 (04:45 +0000)]
NetworkServer: Try to send data immediately
Since the socket is non-blocking, we should get an instant return at little or no cost, and still leave any excess data for epoll to take care of later
Luke Dashjr [Sun, 6 May 2012 04:41:02 +0000 (04:41 +0000)]
Merge branch 'bugfix_sck_nonblock'
Luke Dashjr [Sun, 6 May 2012 04:39:51 +0000 (04:39 +0000)]
Bugfix: Set actual connection sockets non-blocking
Writing a lot of data at once might block and hold up servicing other connections/events
Luke Dashjr [Sat, 5 May 2012 17:07:18 +0000 (17:07 +0000)]
Don't need all merkleroots to be up-to-date before sending the 2nd longpoll
Luke Dashjr [Sat, 5 May 2012 00:06:32 +0000 (00:06 +0000)]
Support for being greedy and excluding trailing feeless transactions
Luke Dashjr [Tue, 24 Apr 2012 23:59:31 +0000 (19:59 -0400)]
Merge branch 'html'
Luke Dashjr [Tue, 24 Apr 2012 23:59:14 +0000 (19:59 -0400)]
Support downloads of complete source as a tar archive
Luke Dashjr [Tue, 24 Apr 2012 22:46:46 +0000 (18:46 -0400)]
Serve source files with correct Content-Type
Luke Dashjr [Tue, 24 Apr 2012 22:40:02 +0000 (18:40 -0400)]
Serve source file list as HTML with links
Luke Dashjr [Tue, 24 Apr 2012 22:26:04 +0000 (18:26 -0400)]
Merge remote branch 'kinlo/saveuserifpasscorrect'
Peter Leurs [Tue, 24 Apr 2012 20:50:03 +0000 (22:50 +0200)]
Only store the username if the password is correct.
Do not send authentication required header: defer that...
Luke Dashjr [Mon, 23 Apr 2012 22:42:09 +0000 (18:42 -0400)]
Merge branch 'tests'
Luke Dashjr [Mon, 23 Apr 2012 22:42:04 +0000 (18:42 -0400)]
When deciding whether to restore full worklog, count the expiration from the server stop time rather than file modification time
Luke Dashjr [Mon, 23 Apr 2012 22:40:43 +0000 (18:40 -0400)]
Document the different worklog format versions
Luke Dashjr [Mon, 23 Apr 2012 22:34:57 +0000 (18:34 -0400)]
MerkleTree: More extensive testing
Luke Dashjr [Mon, 23 Apr 2012 22:31:54 +0000 (18:31 -0400)]
MerkleTree: Adopt new test suite format, to clean up module namespace
Luke Dashjr [Mon, 23 Apr 2012 22:30:31 +0000 (18:30 -0400)]
bitcoin.txn: Test suite
Luke Dashjr [Mon, 23 Apr 2012 22:29:54 +0000 (18:29 -0400)]
Merge branch 'bugfix_txn_isCoinbase'
Conflicts:
bitcointxn.py
Luke Dashjr [Mon, 23 Apr 2012 22:29:13 +0000 (18:29 -0400)]
Bugfix: Correct input check for isCoinbase
Luke Dashjr [Mon, 23 Apr 2012 21:59:04 +0000 (17:59 -0400)]
Merge branch 'bugfix_varlen_bytes'
Conflicts:
bitcoinvarlen.py
Luke Dashjr [Mon, 23 Apr 2012 21:56:48 +0000 (17:56 -0400)]
Bugfix: varlenDecode/varlenEncode still epic failed; finally fix this bugger, and add unit tests to make sure
Luke Dashjr [Mon, 23 Apr 2012 16:33:09 +0000 (12:33 -0400)]
Merge branch 'bugfix_txn_isCoinbase'
Conflicts:
bitcointxn.py
Luke Dashjr [Mon, 23 Apr 2012 16:31:37 +0000 (12:31 -0400)]
Bugfix: a typo in isCoinbase broke it always
Luke Dashjr [Fri, 20 Apr 2012 19:47:40 +0000 (15:47 -0400)]
Add debugging variables to networkserver
Luke Dashjr [Thu, 12 Apr 2012 01:22:57 +0000 (21:22 -0400)]
Merge branch 'bugfix_gmp_submitblock_rv_2'
Conflicts:
jsonrpcserver.py
Luke Dashjr [Thu, 12 Apr 2012 01:20:02 +0000 (21:20 -0400)]
Merge branch 'bugfix_gmp_submitblock_rv' into bugfix_gmp_submitblock_rv_2
Luke Dashjr [Thu, 12 Apr 2012 01:18:47 +0000 (21:18 -0400)]
Bugfix: Refactor sendReply (and derivatives) to use a RequestHandled exception when completing a request
This is needed to avoid abusing a None return type.
JSON-RPC needs to return null (None) for submitblock.
Luke Dashjr [Mon, 9 Apr 2012 15:23:51 +0000 (11:23 -0400)]
Merge branch 'bugfix_lp_rollntime'
Luke Dashjr [Mon, 9 Apr 2012 15:01:25 +0000 (11:01 -0400)]
Bugfix: Correctly assign JSONRPCMethod and _JSONHeaders when processing a GET longpoll
This fixes the "no rollntime for longpolls" bug.
Luke Dashjr [Sun, 8 Apr 2012 02:33:58 +0000 (22:33 -0400)]
Temporary HACK to keep working with older gmp-proxy
Up until just now, Eloipool and gmp-proxy were using submitblock as if it were a getmemorypool(data), returning a boolean.
To give users time to upgrade, special-case the AuthServiceProxy UA for a while.
Luke Dashjr [Sun, 8 Apr 2012 02:33:37 +0000 (22:33 -0400)]
gmp-proxy: Send custom User-Agent with bitcoinrpc
Luke Dashjr [Sun, 8 Apr 2012 02:11:38 +0000 (22:11 -0400)]
Merge branch 'bugfix_gmp_submitblock_rv_2'
Luke Dashjr [Sun, 8 Apr 2012 02:11:31 +0000 (22:11 -0400)]
Merge branch 'bugfix_gmp_submitblock_rv' into bugfix_gmp_submitblock_rv_2
Conflicts:
gmp-proxy.py
Luke Dashjr [Sun, 8 Apr 2012 02:09:50 +0000 (22:09 -0400)]
gmp-proxy: Bugfix: submitblock method returns a rejection reason or null, not a boolean
Luke Dashjr [Sun, 8 Apr 2012 02:02:12 +0000 (22:02 -0400)]
Merge branch 'bugfix_submitblock_rv_2'
Luke Dashjr [Sun, 8 Apr 2012 02:01:55 +0000 (22:01 -0400)]
Merge branch 'bugfix_submitblock_rv' into bugfix_submitblock_rv_2
Conflicts:
jsonrpcserver.py
Luke Dashjr [Sun, 8 Apr 2012 02:01:00 +0000 (22:01 -0400)]
Bugfix: submitblock method returns a rejection reason or null, not a boolean
Luke Dashjr [Wed, 4 Apr 2012 18:27:08 +0000 (14:27 -0400)]
Merge branch 'bugfix_mysql_example_unhex'
Luke Dashjr [Wed, 4 Apr 2012 18:26:51 +0000 (14:26 -0400)]
Example config: Bugfix: We need to UNhex for MySQL, not re-hex
Luke Dashjr [Wed, 4 Apr 2012 18:05:55 +0000 (14:05 -0400)]
gmp-proxy: bind any-address instead of IPv4-localhost
Luke Dashjr [Tue, 3 Apr 2012 18:08:39 +0000 (14:08 -0400)]
Merge branch 'bugfix_mysql'
Luke Dashjr [Tue, 3 Apr 2012 18:08:33 +0000 (14:08 -0400)]
Bugfix: Example INSERT statement for MySQL
Luke Dashjr [Tue, 3 Apr 2012 16:28:45 +0000 (12:28 -0400)]
Example config: Donate 1% of block reward to Luke-Jr via CoinbaserCmd
Luke Dashjr [Tue, 3 Apr 2012 16:25:16 +0000 (12:25 -0400)]
Merge branch 'bugfix_mysql'
Luke Dashjr [Tue, 3 Apr 2012 16:25:09 +0000 (12:25 -0400)]
Bugfixes for MySQL sharelogging
Luke Dashjr [Tue, 3 Apr 2012 16:02:14 +0000 (12:02 -0400)]
Replace binascii.a2b_hex with bytes.fromhex which is faster and actually works right in Python 3.2
Luke Dashjr [Tue, 3 Apr 2012 15:47:32 +0000 (11:47 -0400)]
Merge branch 'bugfix_servername_optional'
Luke Dashjr [Tue, 3 Apr 2012 15:47:22 +0000 (11:47 -0400)]
Bugfix: Initialize AsyncSocketServer.ServerName in case it isn't provided (eg, in gmp-proxy)
Luke Dashjr [Thu, 22 Mar 2012 16:17:39 +0000 (12:17 -0400)]
Bugfix: restore Content-Type for non-NELH longpoll responses
Luke Dashjr [Thu, 22 Mar 2012 15:56:00 +0000 (11:56 -0400)]
Self-comply with AGPL using git ls-files
Luke Dashjr [Fri, 16 Mar 2012 00:18:36 +0000 (20:18 -0400)]
Merge remote branch 'kinlo/servername'
Peter Leurs [Fri, 16 Mar 2012 00:17:14 +0000 (01:17 +0100)]
Use servername in authentication headers
Peter Leurs [Fri, 16 Mar 2012 00:15:06 +0000 (01:15 +0100)]
unknown status codes should reply unknown
Luke Dashjr [Thu, 2 Feb 2012 21:04:36 +0000 (16:04 -0500)]
ServerName config option
Luke Dashjr [Thu, 15 Mar 2012 23:29:38 +0000 (19:29 -0400)]
Demote X-Forwarded-For header ignoring to debug, since it's actually pretty common
Luke Dashjr [Thu, 15 Mar 2012 23:23:41 +0000 (19:23 -0400)]
Merge branch 'trustedforwarder'
Luke Dashjr [Thu, 15 Mar 2012 23:23:15 +0000 (19:23 -0400)]
Minor cleanups
Peter Leurs [Thu, 15 Mar 2012 23:14:34 +0000 (00:14 +0100)]
Add support for running behind a proxy: support for the X-Forwarded-For header
Luke Dashjr [Sun, 11 Mar 2012 19:33:27 +0000 (15:33 -0400)]
Warn if merkle tree isn't being updated, or hasn't produced a transaction-longpoll
Luke Dashjr [Fri, 9 Mar 2012 03:35:43 +0000 (22:35 -0500)]
Disable auto-midstate for phoenix/1.50 because a stupid botnet advertises Ufasoft as it
Luke Dashjr [Thu, 8 Mar 2012 15:42:33 +0000 (10:42 -0500)]
Merge branch 'bugfix_race_coinbase_3'
Luke Dashjr [Thu, 8 Mar 2012 15:42:27 +0000 (10:42 -0500)]
Merge branch 'bugfix_race_coinbase_2' into bugfix_race_coinbase_3
Conflicts:
eloipool.py
Luke Dashjr [Thu, 8 Mar 2012 15:41:26 +0000 (10:41 -0500)]
Merge branch 'bugfix_race_coinbase' into bugfix_race_coinbase_2
Conflicts:
eloipool.py
Luke Dashjr [Thu, 8 Mar 2012 15:39:59 +0000 (10:39 -0500)]
Bugfix: Deepcopy coinbase transaction in must-be-threadsafe checkShare before modifying it, since merklemaker could possibly be using it too
Luke Dashjr [Tue, 6 Mar 2012 14:23:54 +0000 (09:23 -0500)]
Temporary hack to try to identify cause of occasional duplicate work
Luke Dashjr [Mon, 5 Mar 2012 20:50:04 +0000 (15:50 -0500)]
Only initialize logging if it hasn't already been
Luke Dashjr [Mon, 5 Mar 2012 20:39:09 +0000 (15:39 -0500)]
Include date/time in logging output
Luke Dashjr [Mon, 5 Mar 2012 16:25:20 +0000 (11:25 -0500)]
Plan on removal of deprecated config variables in a year
Luke Dashjr [Mon, 5 Mar 2012 16:23:01 +0000 (11:23 -0500)]
When upgrading old DbOptions, include "statement" key explicitly
Luke Dashjr [Mon, 5 Mar 2012 01:15:51 +0000 (20:15 -0500)]
Update README with optional database dependencies
Luke Dashjr [Mon, 5 Mar 2012 00:54:28 +0000 (19:54 -0500)]
gitignore eloipool.worklog
Luke Dashjr [Mon, 5 Mar 2012 00:31:48 +0000 (19:31 -0500)]
Merge branch 'bugfix_pgsql_default_stmt'
Conflicts:
sharelogging/sql.py
Luke Dashjr [Mon, 5 Mar 2012 00:30:56 +0000 (19:30 -0500)]
Merge branch 'bugfix_pgsql_pyformat'
Luke Dashjr [Mon, 5 Mar 2012 00:30:46 +0000 (19:30 -0500)]
Bugfix: Need to setdefault on self.opts, not ka
Luke Dashjr [Mon, 5 Mar 2012 00:27:03 +0000 (19:27 -0500)]
Bugfix: Need to support "pyformat" SQL paramstyle for Postgres
Luke Dashjr [Mon, 5 Mar 2012 00:17:35 +0000 (19:17 -0500)]
Support for MySQL and Sqlite share logging
Luke Dashjr [Mon, 5 Mar 2012 00:15:42 +0000 (19:15 -0500)]
Support for customizing logfile format and SQL insert statement
Luke Dashjr [Mon, 5 Mar 2012 00:00:12 +0000 (19:00 -0500)]
Merge branch 'bugfix_YN_None_3'
Luke Dashjr [Mon, 5 Mar 2012 00:00:08 +0000 (19:00 -0500)]
Merge branch 'bugfix_YN_None_2' into bugfix_YN_None_3
Conflicts:
sharelogging/logfile.py
Luke Dashjr [Sun, 4 Mar 2012 23:58:45 +0000 (18:58 -0500)]
Merge branch 'bugfix_YN_None' into bugfix_YN_None_2
Conflicts:
sharelogging/logfile.py
Luke Dashjr [Sun, 4 Mar 2012 23:57:02 +0000 (18:57 -0500)]
Log "-" for upstreamResult rather than "N" if not attempted
Luke Dashjr [Sun, 4 Mar 2012 21:22:52 +0000 (16:22 -0500)]
Bugfix: Failure to setup a share logger is an error
Luke Dashjr [Sun, 4 Mar 2012 21:22:04 +0000 (16:22 -0500)]
Bugfix: Correct example logfile type
Luke Dashjr [Sun, 4 Mar 2012 21:12:18 +0000 (16:12 -0500)]
Abstract postgres sharelogging into generic SQL sharelogger
Note: This changes the format of the ShareLogging variable; backward compatibility will be retained for only a month, since it was just introduced and has few users
Luke Dashjr [Sun, 4 Mar 2012 18:05:28 +0000 (13:05 -0500)]
Merge branch 'logshare'
Luke Dashjr [Sun, 4 Mar 2012 01:39:53 +0000 (20:39 -0500)]
(Debug) logger name consistency
Luke Dashjr [Sun, 4 Mar 2012 01:38:14 +0000 (20:38 -0500)]
Improve sharelogging consistency, and make it an object-oriented framework