Received: from sog-mx-1.v43.ch3.sourceforge.com ([172.29.43.191]
	helo=mx.sourceforge.net)
	by sfs-ml-3.v29.ch3.sourceforge.com with esmtp (Exim 4.76)
	(envelope-from <jgarzik@bitpay.com>) id 1Vjxcw-0006Yn-KY
	for bitcoin-development@lists.sourceforge.net;
	Fri, 22 Nov 2013 20:46:58 +0000
Received-SPF: pass (sog-mx-1.v43.ch3.sourceforge.com: domain of bitpay.com
	designates 74.125.82.173 as permitted sender)
	client-ip=74.125.82.173; envelope-from=jgarzik@bitpay.com;
	helo=mail-we0-f173.google.com; 
Received: from mail-we0-f173.google.com ([74.125.82.173])
	by sog-mx-1.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128)
	(Exim 4.76) id 1Vjxcv-0001Uk-DV
	for bitcoin-development@lists.sourceforge.net;
	Fri, 22 Nov 2013 20:46:58 +0000
Received: by mail-we0-f173.google.com with SMTP id t61so1657924wes.18
	for <bitcoin-development@lists.sourceforge.net>;
	Fri, 22 Nov 2013 12:46:51 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20130820;
	h=x-gm-message-state:mime-version:date:message-id:subject:from:to
	:content-type;
	bh=zm7flVfgVNQSlHafBdk1yBpN/bTrOsGGOd73/VMLcVw=;
	b=eWZFX4SW4ICI4jdezz4ZigZL+BkBSFLPDZ2JYrqOiwLT+wni2fP0yu9Nw9cXhk7etT
	VH8JsuZ/iRdOI8ZKimq96/TyrBx0suOva6hwL+rlWoT4tt8B5R0MQm6FC+ISrjNTPWhm
	bDcUR9Ui33CyavopmltB4EYpkjwXSJ0O/lRmdldc54fidjXl9CK9NQ+Wy4PzBaOe0cJr
	gUdcBNQjBi+R3JsRfcB4YCqid9IqwA8yKOuZ+jcME+o/YqHbQRBFEqcxxYRtG70i/2/V
	66AYWULZ+ckTWwg8ILLfeLw/lY4PmxeH4TvssAwXuDgoC+OK67hXLE0Y3Fi7n2om2UuT
	pJQg==
X-Gm-Message-State: ALoCoQlCCkb/D5VhdCnBUHmoLSpT2l7JrJbxbrhirrZFqQUHWmG1M7OHWTy2gmblYivyRvxJDnoa
MIME-Version: 1.0
X-Received: by 10.194.9.100 with SMTP id y4mr11898186wja.22.1385153211057;
	Fri, 22 Nov 2013 12:46:51 -0800 (PST)
Received: by 10.194.164.164 with HTTP; Fri, 22 Nov 2013 12:46:50 -0800 (PST)
Date: Fri, 22 Nov 2013 15:46:50 -0500
Message-ID: <CAJHLa0PP-q9cmHKzk5uzRZfLYXpwse4K497Wuuc+7UBrupDd2w@mail.gmail.com>
From: Jeff Garzik <jgarzik@bitpay.com>
To: Bitcoin Dev <bitcoin-development@lists.sourceforge.net>
Content-Type: multipart/mixed; boundary=047d7b5d58a21aef2304ebca1df7
X-Spam-Score: -1.6 (-)
X-Spam-Report: Spam Filtering performed by mx.sourceforge.net.
	See http://spamassassin.org/tag/ for more details.
	-1.5 SPF_CHECK_PASS SPF reports sender host as permitted sender for
	sender-domain
	-0.0 SPF_PASS               SPF: sender matches SPF record
	0.0 URIBL_BLOCKED ADMINISTRATOR NOTICE: The query to URIBL was blocked.
	See
	http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block
	for more information. [URIs: bitpay.com]
	-0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from
	author's domain
	0.1 DKIM_SIGNED            Message has a DKIM or DK signature,
	not necessarily valid
	-0.1 DKIM_VALID Message has at least one valid DKIM or DK signature
X-Headers-End: 1Vjxcv-0001Uk-DV
Subject: [Bitcoin-development] [PATCH] bitcoind: whitelist nodes,
	to prevent them from being banned
X-BeenThere: bitcoin-development@lists.sourceforge.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: <bitcoin-development.lists.sourceforge.net>
List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
	<mailto:bitcoin-development-request@lists.sourceforge.net?subject=unsubscribe>
List-Archive: <http://sourceforge.net/mailarchive/forum.php?forum_name=bitcoin-development>
List-Post: <mailto:bitcoin-development@lists.sourceforge.net>
List-Help: <mailto:bitcoin-development-request@lists.sourceforge.net?subject=help>
List-Subscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
	<mailto:bitcoin-development-request@lists.sourceforge.net?subject=subscribe>
X-List-Received-Date: Fri, 22 Nov 2013 20:46:58 -0000

--047d7b5d58a21aef2304ebca1df7
Content-Type: text/plain; charset=ISO-8859-1

Trying something new... a [simple] patch sent to the list, for
discussion.  Seems unlikely to be controversial.  github access is
temporarily disabled, so this is the best pull request avenue for the
moment.

-- 
Jeff Garzik
Bitcoin core developer and open source evangelist
BitPay, Inc.      https://bitpay.com/

--047d7b5d58a21aef2304ebca1df7
Content-Type: text/plain; charset=US-ASCII; name="patch.txt"
Content-Disposition: attachment; filename="patch.txt"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_hobweij50

ZGlmZiAtLWdpdCBhL25vZGVfbW9kdWxlcy9iaXRwYXkvYml0Y29pblJQQy5qcyBiL25vZGVfbW9k
dWxlcy9iaXRwYXkvYml0Y29pblJQQy5qcwppbmRleCBiZDQxMGFjLi5lNmVkZjgxIDEwMDY0NAot
LS0gYS9ub2RlX21vZHVsZXMvYml0cGF5L2JpdGNvaW5SUEMuanMKKysrIGIvbm9kZV9tb2R1bGVz
L2JpdHBheS9iaXRjb2luUlBDLmpzCkBAIC02OCw2ICs2OCwxOCBAQCBmdW5jdGlvbiBzcGVjKGIp
IHsKICAgICBSUEMuY2FsbCh0aGlzLCAnZ2V0dHJhbnNhY3Rpb24nLCAgW3R4aWRdLCBjYWxsYmFj
ayk7CiAgIH07CiAKKyAgQml0Y29pblJQQy5wcm90b3R5cGUuZ2V0UmF3VHJhbnNhY3Rpb24gPSBm
dW5jdGlvbih0eGlkLCBjYWxsYmFjaykgeworICAgIFJQQy5jYWxsKHRoaXMsICdnZXRyYXd0cmFu
c2FjdGlvbicsICBbdHhpZF0sIGNhbGxiYWNrKTsKKyAgfTsKKworICBCaXRjb2luUlBDLnByb3Rv
dHlwZS5zaWduUmF3VHJhbnNhY3Rpb24gPSBmdW5jdGlvbihoZXhzdHIsIGNhbGxiYWNrKSB7Cisg
ICAgUlBDLmNhbGwodGhpcywgJ3NpZ25yYXd0cmFuc2FjdGlvbicsICBbaGV4c3RyXSwgY2FsbGJh
Y2spOworICB9OworCisgIEJpdGNvaW5SUEMucHJvdG90eXBlLnNlbmRSYXdUcmFuc2FjdGlvbiA9
IGZ1bmN0aW9uKGhleHN0ciwgY2FsbGJhY2spIHsKKyAgICBSUEMuY2FsbCh0aGlzLCAnc2VuZHJh
d3RyYW5zYWN0aW9uJywgIFtoZXhzdHJdLCBjYWxsYmFjayk7CisgIH07CisKICAgQml0Y29pblJQ
Qy5wcm90b3R5cGUuc2VuZFRvQWRkcmVzcyA9IGZ1bmN0aW9uKGFkZHJlc3MsIGFtb3VudCwgY2Fs
bGJhY2spIHsKICAgICBSUEMuY2FsbCh0aGlzLCAnc2VuZHRvYWRkcmVzcycsIFthZGRyZXNzLCBh
bW91bnRdLCBjYWxsYmFjayk7CiAgIH07CmRpZmYgLS1naXQgYS9ub2RlX21vZHVsZXMvdHh0b29s
L3R4dG9vbCBiL25vZGVfbW9kdWxlcy90eHRvb2wvdHh0b29sCm5ldyBmaWxlIG1vZGUgMTAwNzU1
CmluZGV4IDAwMDAwMDAuLmI1MGRjNzcKLS0tIC9kZXYvbnVsbAorKysgYi9ub2RlX21vZHVsZXMv
dHh0b29sL3R4dG9vbApAQCAtMCwwICsxLDEyNCBAQAorIyEvdXNyL2Jpbi9lbnYgbm9kZQorCit2
YXIgZnMgPSByZXF1aXJlKCdmcycpOwordmFyIFV0aWwgPSByZXF1aXJlKCdiaXRjb2luL2xpYi9l
eHQvdXRpbCcpOwordmFyIEJpdGNvaW5SUEMgPSByZXF1aXJlKCdiaXRwYXkvYml0Y29pblJQQycp
LmRlZmF1bHQoKTsKK3ZhciBiaXRjb2luUlBDID0gdW5kZWZpbmVkOwordmFyIFRyYW5zYWN0aW9u
ID0gcmVxdWlyZWQoJ2JpdGNvaW4vbGliL21vZGVsL3RyYW5zYWN0aW9uJykuY2xhc3MoKTsKKwor
dmFyIGFyZ3YgPSByZXF1aXJlKCdvcHRpbWlzdCcpCisJLnVzYWdlKCdUcmFuc2FjdGlvbiB0b29s
LlxuVXNhZ2U6ICQwIFtvcHRpb25zXScpCisJLmRlbWFuZChbJ2MnXSkKKwkuYWxpYXMoJ2YnLCAn
ZmlsZScpCisJLmRlc2NyaWJlKCdmJywgJ1RyYW5zYWN0aW9uIHNvdXJjZSBmaWxlIChyYXcsIHNl
cmlhbGl6ZWQsIGhleCBlbmNvZGVkKScpCisJLmFsaWFzKCd4JywgJ3R4aWQnKQorCS5kZXNjcmli
ZSgneCcsICdUcmFuc2FjdGlvbiBpZCAoc3dpdGNoZXMgVFggc291cmNlIHRvIFJQQyknKQorCS5h
bGlhcygnYycsICdjbWQnKQorCS5kZXNjcmliZSgnYycsICdKU09OIGNvbW1hbmQgZmlsZScpCisJ
LmFsaWFzKCdoJywgJ2hvc3QnKQorCS5kZXNjcmliZSgnaCcsICdiaXRjb2luZCBSUEMgaG9zdG5h
bWUgb3IgSVAgYWRkcmVzcycpCisJLmFsaWFzKCdwJywgJ3BvcnQnKQorCS5kZXNjcmliZSgncCcs
ICdiaXRjb2luZCBSUEMgcG9ydCcpCisJLmFsaWFzKCdVJywgJ3VzZXInKQorCS5kZXNjcmliZSgn
VScsICdiaXRjb2luZCBSUEMgdXNlcm5hbWUnKQorCS5hbGlhcygnUCcsICdwYXNzJykKKwkuZGVz
Y3JpYmUoJ1AnLCAnYml0Y29pbmQgUlBDIHBhc3N3b3JkJykKKwkuYXJndgorOworCitmdW5jdGlv
biBzZXR1cFJQQyhob3N0LCBwb3J0LCB1c2VyLCBwYXNzKSB7CisJdmFyIG9wdHMgPSB7fTsKKwlv
cHRzLmhvc3QgPSBob3N0OworCW9wdHMucG9ydCA9IHBvcnQ7CisJb3B0cy51c2VyID0gdXNlcjsK
KwlvcHRzLnBhc3MgPSBwYXNzOworCWJpdGNvaW5SUEMgPSBuZXcgQml0Y29pblJQQyhvcHRzKTsK
K30KKworZnVuY3Rpb24gbG9hZFR4UlBDKHR4aWQpIHsKKwl2YXIgaGV4c3RyID0gYml0Y29pblJQ
Qy5nZXRSYXdUcmFuc2FjdGlvbih0eGlkKTsKKworCXZhciBkYXRhID0gbmV3IEJ1ZmZlcihoZXhz
dHIsICdoZXgnKTsKKwl2YXIgdHggPSBuZXcgVHJhbnNhY3Rpb24oZGF0YSk7CisJcmV0dXJuIHR4
OworfQorCitmdW5jdGlvbiBsb2FkVHhmaWxlKGZpbGVuYW1lKSB7CisJdmFyIGhleGZpbGUgPSBm
cy5yZWFkRmlsZXN5bmMoZmlsZW5hbWUsICd1dGY4Jyk7CisKKwl2YXIgZGF0YSA9IG5ldyBCdWZm
ZXIoaGV4ZmlsZS50cmltKCksICdoZXgnKTsKKwl2YXIgdHggPSBuZXcgVHJhbnNhY3Rpb24oZGF0
YSk7CisJcmV0dXJuIHR4OworfQorCitmdW5jdGlvbiBsb2FkQ21kRmlsZShmaWxlbmFtZSkgewor
CXZhciBkYXRhID0gSlNPTi5wYXJzZShmcy5yZWFkRmlsZVN5bmMoZmlsZW5hbWUpKS5yZXN1bHQ7
CisJcmV0dXJuIGRhdGE7Cit9CisKKy8vIGhvdyBtYW55IGNvcGllcyBvZiB0aGlzIGNhbiBvbmUg
Y29kZWJhc2UgYmVhcj8KK2Z1bmN0aW9uIHRyYW5zYWN0aW9uRGVzYyh0eCkgeworICB2YXIgb3V0
RGVzY3JpcHRpb25zID0gW107CisgIHZhciBvdXRzID0gdHgub3V0czsKKyAgZm9yKHZhciBpPTA7
IGk8b3V0cy5sZW5ndGg7IGkrKykgeworICAgIHZhciB0eG91dCA9IG91dHNbaV07CisgICAgdmFy
IHNjcmlwdCA9IHR4b3V0LmdldFNjcmlwdCgpOworICAgIHZhciB0eXBlID0gc2NyaXB0LmdldE91
dFR5cGUoKTsKKyAgICB2YXIgYW1vdW50ID0gKHR4b3V0LmdldFZhbHVlKCkgLyAxZTgpLnJvdW5k
KDgpOworICAgIGlmKHR5cGUgPT0gJ0FkZHJlc3MnKSB7CisgICAgICBvdXREZXNjcmlwdGlvbnMu
cHVzaCh7CisgICAgICAgIHR5cGU6IHR5cGUsCisgICAgICAgIGFtb3VudDogYW1vdW50LAorICAg
ICAgICBhZGRyZXNzOiBVdGlsLnB1YktleUhhc2hUb0FkZHJlc3Moc2NyaXB0LnNpbXBsZU91dEhh
c2goKSkKKyAgICAgIH0pOworICAgIH0gZWxzZSB7CisgICAgICBvdXREZXNjcmlwdGlvbnMucHVz
aCh7CisgICAgICAgIHR5cGU6IHR5cGUsCisgICAgICAgIGFtb3VudDogYW1vdW50CisgICAgICB9
KTsKKyAgICB9CisgIH0KKyAgcmV0dXJuIHsKKyAgICB0eGlkOiBVdGlsLmZvcm1hdEhhc2hGdWxs
KHR4LmdldEhhc2goKSksCisgICAgb3V0czogb3V0RGVzY3JpcHRpb25zCisgIH0KK307CisKK2Z1
bmN0aW9uIENtZFNob3codHgpIHsKKwljb25zb2xlLmxvZyhpbnNwZWN0KHRyYW5zYWN0aW9uRGVz
Yyh0eCksIGZhbHNlLCAxMCkpOworfQorCitmdW5jdGlvbiBDbWRTaWduKHR4KSB7CisJdmFyIHR4
SGV4ID0gVXRpbC5lbmNvZGVIZXgodHguc2VyaWFsaXplKCkpOworCXZhciByZXRIZXggPSBiaXRj
b2luUlBDLnNpZ25SYXdUcmFuc2FjdGlvbih0eEhleCk7CisJY29uc29sZS5sb2cocmV0SGV4KTsK
K30KKworZnVuY3Rpb24gQ21kU2VuZCh0eCkgeworCXZhciB0eEhleCA9IFV0aWwuZW5jb2RlSGV4
KHR4LnNlcmlhbGl6ZSgpKTsKKwliaXRjb2luUlBDLnNlbmRSYXdUcmFuc2FjdGlvbih0eEhleCk7
Cit9CisKK2Z1bmN0aW9uIEV4ZWNDbWREYXRhKHR4LCBjbWREYXRhKSB7CisJZm9yICh2YXIgaSA9
IDA7IGkgPCBjbWREYXRhLmxlbmd0aDsgaSsrKSB7CisJCXZhciBvYmogPSBjbWREYXRhW2ldOwor
CQlpZiAob2JqLmNtZCA9PSAic2hvdyIpIHsKKwkJCUNtZFNob3codHgpOworCQl9CisJCWVsc2Ug
aWYgKG9iai5jbWQgPT0gInNpZ24iKSB7CisJCQlDbWRTaWduKHR4KTsKKwkJfQorCQllbHNlIGlm
IChvYmouY21kID09ICJzZW5kIikgeworCQkJQ21kU2VuZCh0eCk7CisJCX0KKwl9Cit9CisKK2lm
IChhcmd2Lmhvc3QpIHsKKwlzZXR1cFJQQyhob3N0LCBwb3J0LCB1c2VyLCBwYXNzKTsKK30KK3Zh
ciB0eCA9IGFyZ3YudHhpZCA/IGxvYWRUeFJQQyhhcmd2LnR4aWQpIDoKKwkJICAgICBsb2FkVHhG
aWxlKGFyZ3YuZmlsZSk7Cit2YXIgY21kRGF0YSA9IGxvYWRDbWRGaWxlKGFyZ3YuY21kKTsKK0V4
ZWNDbWREYXRhKHR4LCBjbWREYXRhKTsKKwo=
--047d7b5d58a21aef2304ebca1df7--