TransactionEngine: do not allow bad transfer rate to be set.

This commit is contained in:
Arthur Britto
2012-09-28 12:30:29 -07:00
parent e2fb75046f
commit 9f2b38a441
3 changed files with 11 additions and 2 deletions

View File

@@ -166,18 +166,24 @@ TER TransactionEngine::doAccountSet(const SerializedTransaction& txn)
{
uint32 uRate = txn.getITFieldU32(sfTransferRate);
if (!uRate)
if (!uRate || uRate == QUALITY_ONE)
{
Log(lsINFO) << "doAccountSet: unset transfer rate";
mTxnAccount->makeIFieldAbsent(sfTransferRate);
}
else
else if (uRate > QUALITY_ONE)
{
Log(lsINFO) << "doAccountSet: set transfer rate";
mTxnAccount->setIFieldU32(sfTransferRate, uRate);
}
else
{
Log(lsINFO) << "doAccountSet: bad transfer rate";
return temBAD_TRANSFER_RATE;
}
}
//