Neil Booth
90e2cf6efd
Process sessions most-expensive first
So if they are cut off they no longer contribute to the group cost
of other sessions
6 years ago
Neil Booth
d3b3c26e4d
Add 2 groups for each session
One IP-address based, one time-based. A session accrues a fraction
of the costs of other sessions in its groups.
6 years ago
ghost43
593fb548bf
session: rework transaction.get_merkle: avoid calling bitcoind ( #789 )
use ElectrumX's db instead
6 years ago
Neil Booth
c03a72faa6
Generic session costing
* new env vars: COST_SOFT_LIMIT, COST_HARD_LIMIT, BANDWIDTH_UNIT_COST
* obsolete: BANDWIDTH_LIMIT, MAX_SESSION_SUBS, MAX_SUBS
* requires aiorpcX 0.12.0
6 years ago
peleion
4252af006f
Change peer list refresh / stale timeout from 24 hours to 1 hour ( #787 )
* Change staleness to 3 hrs
6 years ago
Neil Booth
1bafc3404e
BitcoinSV: update PEERS
6 years ago
Neil Booth
a89eeaa775
electrumx_rpc: raise timeout to 30s; show exception as string
6 years ago
ghost43
1f5115703f
session: properly disconnect unsupported clients in server_version ( #786 )
6 years ago
Neil Booth
06ee804a30
aiorpcx: require 0.11.0
6 years ago
Neil Booth
3144d3821f
Placate pycodestyle
6 years ago
Neil Booth
2e03d46042
Limit add_peer requests by domain
6 years ago
Liam Alford
f57f227fa4
DeepOnion integration. ( #782 )
6 years ago
2INFINITY
8caae42a99
Added BitcoinZero BZX ( #780 )
6 years ago
DEVCØN
fcc62b4762
Added GravityCoin GXX ( #773 )
6 years ago
smogm
d2fe2728f2
add handling for transactions of version 2 with service hash ( #770 )
6 years ago
smogm
890456ba8f
adding ECCoin blockchain ( #769 )
6 years ago
ghost43
0562f6ed85
peers: small improvements against sybils ( #765 )
* peers: also test IP address in blacklist
previously IP was only tested if "host" itself was an IP
* peers: IP based restrictions on internal peer list
forbid multiple peers sharing single IPv4
forbid multiple peers sharing IPv6 /64
limit number of .onion peers relative to total number of peers
6 years ago
ghost43
13952823eb
local rpc: new field for getinfo: "sessions_with_subs" ( #766 )
6 years ago
Jenova7
e78f57b9a1
Add support for Electra (ECA) ( #764 )
6 years ago
sancoder
4e9104acad
Windows support for ElectrumX ( #761 )
* Make resource module optional in server/env.py
* Ignore root user check if starting on Windows.
* Skip signal handler setup on Windows.
* Graceful shutdown on Windows; more elegant way to detect Windows.
6 years ago
Björge Dijkstra
7ec188b35b
peers: case insensitive blacklist ( #763 )
Fixes hosts bypassing the blacklist by varying capitalization in their hostnames.
6 years ago
Neil Booth
5e5f97c2a3
Prepare 1.10.0
6 years ago
ghost43
bdea2b2b06
crash old clients ( #760 )
* rename method "upgrade_required"
* attempt to crash old clients to force users to upgrade
On the BTC chain, exploit a DOS vulnerability in old Electrum clients,
to kill their network thread and make them unusable. This should force
users of old clients that are vulnerable to the transaction-broadcast
phishing attack to upgrade their client.
6 years ago
ghost43
380035ba22
peers: force retry blacklisted active peers after fetching blacklist ( #758 )
6 years ago
Snowgem
10a0026516
Update SnowGem header ( #751 )
6 years ago
ghost43
71b37bd2fe
peers: mark blacklisted peers bad ( #753 )
6 years ago
Jose Luis Estevez
c7a65fc9b0
Add Onixcoin (ONIX) ( #747 )
* Add Onixcoin (ONIX)
6 years ago
standard-error
a10be8633a
Add support for Ravencoin (RVN) ( #745 )
* Add support for Ravencoin (RVN)
6 years ago
d42
54bbf90fe0
Peer.genesis_hash docstring ( #742 )
6 years ago
David
d96a91c727
Add support for Bitsend (BSD) ( #738 )
6 years ago
konez2k
24008f3111
[DashElectrumX] prevent size change of self.mns ( #739 )
send_notification adds the retreived collateral to self.mns during masternode.subscribe, this can issue a runtime error because size of self.mns changes during iteration.
Reproduce: issue multiple masternode.subscribe (with valid and invalid collaterals) during the same session.
6 years ago
David
6ac360185b
Add BTX peers ( #737 )
6 years ago
Gruve_p
bd9fcabc6e
Add Groestlcoin Blacklist URL ( #735 )
6 years ago
Neil Booth
19d3499f7e
server_base: Wait for task cancellation to complete
Fixes #660
6 years ago
Cronos
a44c40c169
Fixing Polis and add more coins ( #733 )
* Remove unmantained Gobyte, Moneci
* Update ColossusXT and Polis
* Support MNPCoin, Zcoin and GINCoin
6 years ago
Mircea Rila
7a075efa6b
Add support for Sparks (SPK) ( #721 )
6 years ago
RaySpock
ed59ea9f51
add .idea dir to gitignore ( #729 )
6 years ago
Jin Eguchi
7659a2667d
Add monacoin's blacklist.json ( #730 )
6 years ago
Neil Booth
de3ad8195a
Prepare 1.9.5
6 years ago
Neil Booth
bde362752c
Fix docs
6 years ago
Neil Booth
624a921a6e
Tests: fix deprecation warning
6 years ago
Neil Booth
647fad57fb
Remove unused wallet stuff
6 years ago
Neil Booth
7c9c06e562
Don't add same peer twice
Fixes #727
6 years ago
Neil Booth
9f4fc12db1
Use less task groups now aiorpcx (0.10.4) is fixed
6 years ago
Neil Booth
03d263fd40
Follow-up prior
- remove sybils member and old sybil detection
- make BLACKLIST_URL a coin default
- tweak logging
6 years ago
ThomasV
de3edaaa51
Blacklist logic: ( #723 )
* Blacklist logic:
* do not return blacklisted peers to clients
* blacklist is retrieved from BLACKLIST_URL
* blacklist is refreshed every 10 minutes
* for BitcoinSegwit, BLACKLIST_URL defaults to https://electrum.org/blacklist.json
* make sybil detection independent from peer discovery
6 years ago
Neil Booth
4e96fd44f0
Fix docs for cp_height
6 years ago
Neil Booth
4236bf9df8
Prepare 1.9.4
6 years ago
Neil Booth
4b025ca80b
Sombernight's fix for #713
Require aiorpcx >= 0.10.3
6 years ago
Neil Booth
c27860327f
Only check matches for non-tor peers
6 years ago