Cap -ac_perc to be based on million max

This commit is contained in:
jl777
2019-01-13 05:34:42 -11:00
parent c334d5c2e4
commit e06138fecf
3 changed files with 10 additions and 17 deletions

View File

@@ -251,20 +251,9 @@ bool MarmaraValidate(struct CCcontract_info *cp,Eval* eval,const CTransaction &t
}
else if ( funcid == 'S' ) // collect -> automatically spend issuers locked funds, given 'I'
{
return(true);
}
else if ( funcid == 'A' ) // agree -> agree that 'I' is unable to be redeemed, remainder
{
return(true);
}
else if ( funcid == 'D' ) // dispute -> given 'I' submit for manual arbitration
{
return(true);
}
else if ( funcid == 'F' ) // foreclose -> given 'A' collect as much of remainder from credit loop
{
return(true);
return(true); // iterate from issuer all remainder after maturity
}
// staking only for locked utxo
}
return eval->Invalid("fall through error");
}
@@ -315,6 +304,7 @@ UniValue MarmaraReceive(uint64_t txfee,CPubKey senderpk,int64_t amount,std::stri
cp = CCinit(&C,EVAL_MARMARA);
if ( txfee == 0 )
txfee = 10000;
// check for batonownership by senderpk and parameters match createtxid
mypk = pubkey2pk(Mypubkey());
if ( currency != "MARMARA" )
errorstr = (char *)"for now, only MARMARA loops are supported";
@@ -363,6 +353,7 @@ UniValue MarmaraIssue(uint64_t txfee,uint8_t funcid,CPubKey receiverpk,int64_t a
cp = CCinit(&C,EVAL_MARMARA);
if ( txfee == 0 )
txfee = 10000;
// make sure if transfer that it is not too late
mypk = pubkey2pk(Mypubkey());
if ( currency != "MARMARA" )
errorstr = (char *)"for now, only MARMARA loops are supported";
@@ -376,7 +367,7 @@ UniValue MarmaraIssue(uint64_t txfee,uint8_t funcid,CPubKey receiverpk,int64_t a
{
errorstr = (char *)"couldnt finalize CCtx";
mtx.vout.push_back(MakeCC1vout(EVAL_MARMARA,txfee,receiverpk));
rawtx = FinalizeCCTx(0,cp,mtx,mypk,txfee,MarmaraLoopOpret('I',createtxid,receiverpk,amount,matures,currency));
rawtx = FinalizeCCTx(0,cp,mtx,mypk,txfee,MarmaraLoopOpret(funcid,createtxid,receiverpk,amount,matures,currency));
if ( rawtx.size() > 0 )
errorstr = 0;
} else errorstr = (char *)"dont have enough normal inputs for 2*txfee";

View File

@@ -1165,10 +1165,12 @@ uint64_t komodo_commission(const CBlock *pblock,int32_t height)
//fprintf(stderr,"(%d %.8f).%d ",i,dstr(pblock->vtx[i].vout[j].nValue),j);
if ( i != 0 || j != 1 )
total += pblock->vtx[i].vout[j].nValue;
if ( total > 1000000 * COIN )
total = 1000000 * COIN;
}
}
commission = ((total / 10000) * ASSETCHAINS_COMMISSION) / 10000;
//commission = ((total * ASSETCHAINS_COMMISSION) / COIN);
//commission = ((total / 10000) * ASSETCHAINS_COMMISSION) / 10000;
commission = ((total * ASSETCHAINS_COMMISSION) / COIN);
}
if ( commission < 10000 )
commission = 0;

View File

@@ -5601,7 +5601,7 @@ UniValue marmara_transfer(const UniValue& params, bool fHelp)
UniValue result(UniValue::VOBJ); uint256 createtxid; std::vector<uint8_t> receiverpub; int64_t amount; int32_t matures; std::string currency;
if ( fHelp || params.size() != 5 )
{
// marmaraissue 039433dc3749aece1bd568f374a45da3b0bc6856990d7da3cd175399577940a775 7.5 MARMARA 2693 e5b1ef8ec90e981d3011c8e024cef869b69af2d4dd6837d1ab1d394d3730b7cb
// marmaratransfer 039433dc3749aece1bd568f374a45da3b0bc6856990d7da3cd175399577940a775 7.5 MARMARA 2693 e5b1ef8ec90e981d3011c8e024cef869b69af2d4dd6837d1ab1d394d3730b7cb
throw runtime_error("marmaratransfer receiverpk amount currency matures createtxid\n");
}
if ( ensure_CCrequirements() < 0 )