From a6b182bd5dfc8cc1f1640626f6c0140dc50ecf78 Mon Sep 17 00:00:00 2001 From: jl777 Date: Fri, 20 Jan 2017 23:29:22 +0200 Subject: [PATCH] test --- src/rpcblockchain.cpp | 4 +++- src/wallet/rpcwallet.cpp | 5 ++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/rpcblockchain.cpp b/src/rpcblockchain.cpp index 3fa60b80e..ec36a9962 100644 --- a/src/rpcblockchain.cpp +++ b/src/rpcblockchain.cpp @@ -410,7 +410,7 @@ int32_t komodo_kvsearch(int32_t current_height,uint32_t *flagsp,int32_t *heightp Value kvsearch(const Array& params, bool fHelp) { - Object ret; uint32_t flags; uint8_t value[IGUANA_MAXSCRIPTSIZE],key[IGUANA_MAXSCRIPTSIZE]; int32_t j,height,valuesize,keylen; + Object ret; uint32_t flags; uint8_t value[IGUANA_MAXSCRIPTSIZE],key[IGUANA_MAXSCRIPTSIZE]; int32_t duration,j,height,valuesize,keylen; if (fHelp || params.size() != 1 ) throw runtime_error("kvsearch key"); LOCK(cs_main); @@ -430,6 +430,8 @@ Value kvsearch(const Array& params, bool fHelp) valuestr = (char *)val.data(); memcpy(valuestr,value,valuesize); ret.push_back(Pair("height",height)); + duration = ((flags >> 2) + 1) * KOMODO_KVDURATION; + ret.push_back(Pair("expiration", (int64_t)(height+duration))); ret.push_back(Pair("flags",(int64_t)flags)); ret.push_back(Pair("value",val)); ret.push_back(Pair("valuesize",valuesize)); diff --git a/src/wallet/rpcwallet.cpp b/src/wallet/rpcwallet.cpp index bbaf05656..1032116a8 100644 --- a/src/wallet/rpcwallet.cpp +++ b/src/wallet/rpcwallet.cpp @@ -563,7 +563,7 @@ Value paxwithdraw(const Array& params, bool fHelp) Value kvupdate(const Array& params, bool fHelp) { CWalletTx wtx; Object ret; - uint8_t keyvalue[IGUANA_MAXSCRIPTSIZE],opretbuf[IGUANA_MAXSCRIPTSIZE]; int32_t opretlen,height; uint16_t keylen,valuesize=0; uint8_t *key,*value=0; uint32_t flags,tmpflags; struct komodo_kv *ptr; uint64_t fee; + uint8_t keyvalue[IGUANA_MAXSCRIPTSIZE],opretbuf[IGUANA_MAXSCRIPTSIZE]; int32_t duration,opretlen,height; uint16_t keylen,valuesize=0; uint8_t *key,*value=0; uint32_t flags,tmpflags; struct komodo_kv *ptr; uint64_t fee; if (fHelp || params.size() < 2 ) throw runtime_error("kvupdate key value [flags]"); if (!EnsureWalletIsAvailable(fHelp)) @@ -585,6 +585,8 @@ Value kvupdate(const Array& params, bool fHelp) ret.push_back(Pair("coin",(char *)(ASSETCHAINS_SYMBOL[0] == 0 ? "KMD" : ASSETCHAINS_SYMBOL))); height = chainActive.Tip()->nHeight; ret.push_back(Pair("height", (int64_t)height)); + duration = ((flags >> 2) + 1) * KOMODO_KVDURATION; + ret.push_back(Pair("expiration", (int64_t)(height+duration))); ret.push_back(Pair("flags",(int64_t)flags)); ret.push_back(Pair("key",params[0].get_str())); ret.push_back(Pair("keylen",(int64_t)keylen)); @@ -610,6 +612,7 @@ Value kvupdate(const Array& params, bool fHelp) EnsureWalletIsUnlocked(); if ( (fee= ((flags>>2)+1)*(opretlen * opretlen / keylen)) < 100000 ) fee = 100000; + ret.push_back(Pair("fee",(double)fee/COIN)); CBitcoinAddress destaddress(CRYPTO777_KMDADDR); if (!destaddress.IsValid()) throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, "Invalid dest Bitcoin address");