Fix some fee logic: (RIPD-614)

* fee_default sets cost in drops of reference transaction
* Offline signing uses fee_default
* Signing multiplier maximum works correctly
* Fix bugs in load fee track
* Remove dead code, add comments
This commit is contained in:
JoelKatz
2014-10-01 11:35:05 -07:00
committed by Nik Bougalis
parent a0dbbb2d84
commit b651e0146d
7 changed files with 28 additions and 24 deletions

View File

@@ -73,11 +73,12 @@ static void autofill_fee (
}
}
std::uint64_t const feeDefault = getConfig().FEE_DEFAULT;
// Default fee in fee units
std::uint64_t const feeDefault = getConfig().TRANSACTION_FEE_BASE;
// Administrative endpoints are exempt from local fees
std::uint64_t const fee = ledger->scaleFeeLoad (feeDefault, admin);
std::uint64_t const limit = mult * feeDefault;
std::uint64_t const limit = mult * ledger->scaleFeeBase (feeDefault);
if (fee > limit)
{
@@ -280,17 +281,6 @@ Json::Value transactionSign (
return e;
}
if (!tx_json.isMember ("Fee")) {
auto const& transactionType = tx_json["TransactionType"].asString ();
if ("AccountSet" == transactionType
|| "OfferCreate" == transactionType
|| "OfferCancel" == transactionType
|| "TrustSet" == transactionType)
{
tx_json["Fee"] = (int) getConfig ().FEE_DEFAULT;
}
}
if (!tx_json.isMember ("Sequence"))
tx_json["Sequence"] = asSrc->getSeq ();