[Qt] add BIP70 DoS protection test
- this test required to make readPaymentRequestFromFile() public in order to be able to is it in paymentservertests.cpp
This commit is contained in:
@@ -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;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user