diff options
| author | Philip Kaufmann <[email protected]> | 2014-12-05 09:39:23 +0100 |
|---|---|---|
| committer | Philip Kaufmann <[email protected]> | 2014-12-08 16:09:01 +0100 |
| commit | 4333e26c8e89e3d02cfb4d3464108b1a15175e2b (patch) | |
| tree | 276eb63f3dfbf3b865f38be5a376ed5bb6fd6031 /src/qt/test | |
| parent | [Qt] add BIP70 payment request size DoS protection for URIs (diff) | |
| download | discoin-4333e26c8e89e3d02cfb4d3464108b1a15175e2b.tar.xz discoin-4333e26c8e89e3d02cfb4d3464108b1a15175e2b.zip | |
[Qt] add BIP70 DoS protection test
- this test required to make readPaymentRequestFromFile() public in order
to be able to is it in paymentservertests.cpp
Diffstat (limited to 'src/qt/test')
| -rw-r--r-- | src/qt/test/paymentservertests.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/qt/test/paymentservertests.cpp b/src/qt/test/paymentservertests.cpp index 84cab01c5..8f49cb946 100644 --- a/src/qt/test/paymentservertests.cpp +++ b/src/qt/test/paymentservertests.cpp @@ -7,6 +7,7 @@ #include "optionsmodel.h" #include "paymentrequestdata.h" +#include "random.h" #include "util.h" #include "utilstrencodings.h" @@ -108,6 +109,17 @@ void PaymentServerTests::paymentServerTests() r.paymentRequest.getMerchant(caStore, merchant); QCOMPARE(merchant, QString("")); + // Just get some random data big enough to trigger BIP70 DoS protection + unsigned char randData[BIP70_MAX_PAYMENTREQUEST_SIZE + 1]; + GetRandBytes(randData, sizeof(randData)); + // Write data to a temp file: + QTemporaryFile tempFile; + tempFile.open(); + tempFile.write((const char*)randData, sizeof(randData)); + tempFile.close(); + // Trigger BIP70 DoS protection + QCOMPARE(PaymentServer::readPaymentRequestFromFile(tempFile.fileName(), r.paymentRequest), false); + delete server; } |