Commit Graph

573 Commits

Author SHA1 Message Date
Neil
d9ff685958 Merge pull request #183 from thelazier/dash_mn_methods
Add support for Dash Masternode methods
2017-05-16 19:02:17 +07:00
Neil Booth
08dbbf217a client_version must be a tuple
Fixes #180
2017-05-16 14:55:19 +09:00
TheLazieR Yip
2e87d49e04 Add more comment on DashElectrumX.server_version 2017-05-15 08:10:09 +00:00
TheLazieR Yip
e99400c225 Update DashElectrumX as commented 2017-05-15 04:12:33 +00:00
TheLazieR Yip
4da2278729 Force server string response for Electrum-Dash 2.6.4 client 2017-05-14 17:38:55 +00:00
TheLazieR Yip
f179c67935 Add support for Dash Masternode methods
+ Add DashDaemon class
+ Add DashElectrumX class
+ Update coin configurations for Dash
2017-05-14 16:36:02 +00:00
TheLazieR Yip
b0e23e903d Allow custom ElectrumX class 2017-05-14 16:26:17 +00:00
Neil
325097f0e6 Merge pull request #176 from erasmospunk/allow-customizations
Allow custom Daemon and BlockProcessor classes
2017-05-07 19:42:25 +07:00
John L. Jegutanis
a4e4f80ad7 Allow custom Daemon and BlockProcessor classes 2017-05-07 14:22:23 +02:00
LaoDC
9e34bf8583 reverted and made the version split isolated within the banner logic only as not to affect other parts of the code. 2017-05-03 17:43:47 +07:00
LaoDC
9dceeb914c Add new variables to BANNER(_TOR)
$SERVER_VER will return the version number (eg: 1.0.10)
$SERVER_SUBVERSION will return the full version string (eg: ElectrumX 1.0.10)

$VERSION is kept for legacy which is the same as $SERVER_SUBVERSION
2017-05-03 17:10:52 +07:00
LaoDC
5e92feb8a6 Add new variables to BANNER(_TOR)
$SERVER_VER will return the version number (eg: 1.0.10)
$SERVER_SUBVERSION will return the full version string (eg: ElectrumX 1.0.10)

$VERSION is kept for legacy which is the same as $SERVER_SUBVERSION
2017-05-03 17:09:52 +07:00
Neil Booth
2fe67932c5 Prepare 1.0.10 2017-04-28 22:44:48 +09:00
Neil Booth
e9acb685ab Display hosts in diagnostic 2017-04-09 14:32:45 +09:00
Neil Booth
d216d5111b Prepare 1.0.9 2017-04-09 14:20:17 +09:00
Neil Booth
8a2821d542 Reject invalid hostnames in Env 2017-04-09 14:15:10 +09:00
Neil Booth
b6d8b86dd6 Ignore hosts not appearing in their own features 2017-04-09 14:02:32 +09:00
Neil Booth
c0ff2c0c20 Bump to 1.0.8b 2017-04-06 07:36:04 +09:00
Neil Booth
f3de91180e Add tests for server/env.py 2017-04-06 07:27:48 +09:00
Neil Booth
30df09534f Bump to 1.0.8a 2017-04-03 21:40:02 +09:00
Neil Booth
2c43e89b05 Only set last_good if successfully verified
Rename last_connect to last_good
2017-04-03 21:37:51 +09:00
Neil Booth
e0a79c313c Prepare 1.0.8 2017-04-03 20:13:35 +09:00
Neil Booth
7b17d99c5a Put log on one line 2017-04-03 20:10:42 +09:00
Neil Booth
9f27ea875c Fix peer replacement logic
- drop the IP address peer
- update the remaining peer with fresh info
2017-04-03 20:07:46 +09:00
Neil Booth
2656fd78a4 Clarify that we may not have a clearnet peer 2017-04-02 21:25:02 +09:00
Neil Booth
e96b8f0421 Prepare 1.0.7 2017-04-02 15:12:50 +09:00
Neil Booth
a94d320e5d New feature: force peer discovery via proxy
Set FORCE_PROXY to non-empty to force peer discovery to go
through the proxy.  See docs/ENVIRONMENT.rst

Wait for an attempt at proxy discovery to be made before beginning
peer discovery.
2017-04-02 15:06:29 +09:00
Neil Booth
77a441ad06 Improve proxy handling
Have a background proxy detection loop; removes need to check
specific peers at startup.
Consider proxy down once attempts to use it fail 3 times in a row.
Regularly attempt to rediscover a proxy if it is down.
2017-04-02 14:27:49 +09:00
Neil Booth
178de6c396 Tighten restrictions on HOST
- private IP not allowed if intending for public use
- localhost not allowed
2017-04-02 10:58:55 +09:00
Neil Booth
81e6577838 Catch address resolution failure exceptions 2017-04-01 22:55:16 +09:00
Neil Booth
321315ace0 Fix typo 2017-04-01 15:17:17 +09:00
Neil Booth
d1894356d0 Prepare 1.0.6 2017-04-01 12:10:18 +09:00
Neil Booth
9abc1dc11e REPORT_HOST no longer defaults to HOST
Cleanup of identity handling.  It is now possible to specify
a Tor identity and no clearnet identity.
2017-04-01 12:03:53 +09:00
Neil Booth
abba36ac6c Relax the get_chunk restriction based on client
Closes #162
2017-04-01 11:17:57 +09:00
Neil Booth
55cedfea9c Have Daemon work with aiohttp 1 and 2
Fixes #163
2017-04-01 10:43:34 +09:00
Neil Booth
594b66236f Prepare 1.0.5 2017-03-28 12:30:06 +09:00
Neil Booth
8e00affc1a Fix the diagnostic looping in PeerSession
Fixes #160
2017-03-28 11:14:50 +09:00
Neil Booth
23a408c572 More logging 2017-03-27 13:04:59 +09:00
Neil Booth
860a4e8e93 Prepare 1.0.4 2017-03-26 11:51:18 +09:00
Neil Booth
2650459012 Peer discovery fixes
Change last_connect to mean last connection as its name implies,
not last connection that wasn't bad.
Keep bad peers around for 3 tries.

Improve diagnostic
2017-03-26 11:42:23 +09:00
Neil Booth
79bce5335e Fix missing self 2017-03-25 20:52:26 +09:00
Neil Booth
fa1a5bd3e4 Prepare 1.0.3 2017-03-25 20:27:33 +09:00
Neil Booth
3236989165 Fix bad peer looping
JWU42 pointed out an issue where peer discovery could get in a
failure loop for bad peers; this fixes the the root cause and
the immediate retries
2017-03-25 20:22:38 +09:00
Neil Booth
7b263c5c49 Prepare 1.0.2 2017-03-25 13:28:43 +09:00
Neil Booth
e4947cb9ef Sanitize the maximum number of sessions
Reduce the maximum number of sessions to permit if running with
a tight rlimit, to avoid hitting open file limits.  Log when
doing so.

Closes #158
2017-03-25 13:28:42 +09:00
Neil Booth
f04ff6f5b3 Don't add_peer to ourself 2017-03-25 13:28:42 +09:00
Neil Booth
8236aaf234 Be more strict on form of features dictionary 2017-03-25 13:28:42 +09:00
Neil Booth
be5397a853 Validate hostnames before accepting a new peer
Don't retain non-public addresses

Closes #157
2017-03-25 11:58:54 +09:00
Neil Booth
7a2f29aabe Be stricter accepting add_peer requests
- rate-limit onion add_peer requests
- for clearnet peers only accept if the peer resolves to the
  source address
2017-03-25 11:36:14 +09:00
Neil Booth
84c201f665 Improve diagnostic 2017-03-25 11:35:56 +09:00