/****************************************************************************** * Copyright © 2018-2020 The Hush Developers * * Copyright © 2014-2018 The SuperNET Developers. * * * * See the AUTHORS, DEVELOPER-AGREEMENT and LICENSE files at * * the top-level directory of this distribution for the individual copyright * * holder information and the developer policies on copyright and licensing. * * * * Unless otherwise agreed in a custom licensing agreement, no part of the * * SuperNET software, including this file may be copied, modified, propagated * * or distributed except according to the terms contained in the LICENSE file * * * * Removal or modification of this copyright notice is prohibited. * * * ******************************************************************************/ #ifdef _DRAGON_APIDEC_H_ emit compiler error if recursively being included #endif #ifndef _DRAGON_APIDEC_H_ #define _DRAGON_APIDEC_H_ STRING_ARG(dpow,pending,fiat); STRING_AND_TWOINTS(dpow,notarizations,symbol,height,numblocks); ZERO_ARGS(dpow,notarychains); STRING_ARG(dpow,active,maskhex); TWOINTS_AND_ARRAY(dpow,ratify,minsigs,timestamp,ratified); ZERO_ARGS(dpow,cancelratify); STRING_ARG(dpow,bindaddr,ipaddr); STRING_AND_INT(dpow,fundnotaries,symbol,numblocks); ZERO_ARGS(dpow,ipaddrs); ZERO_ARGS(pax,start); INT_ARG(passthru,paxfiats,mask); TWO_STRINGS(zcash,passthru,function,hex); TWO_STRINGS(komodo,passthru,function,hex); TWO_STRINGS(dex,kvsearch,symbol,key); THREE_STRINGS_AND_THREE_INTS(dex,kvupdate,symbol,key,value,flags,unused,unusedb); TWO_STRINGS(dex,send,hex,handler); HASH_AND_STRING(dex,gettransaction,txid,symbol); STRING_ARG(dex,getinfo,symbol); STRING_ARG(dex,getnotaries,symbol); STRING_ARG(dex,alladdresses,symbol); STRING_ARG(dex,getbestblockhash,symbol); STRING_AND_INT(dex,getblockhash,symbol,height); HASH_AND_STRING(dex,getblock,hash,symbol); TWO_STRINGS(dex,sendrawtransaction,symbol,signedtx); HASH_AND_STRING_AND_INT(dex,gettxout,txid,symbol,vout); TWO_STRINGS(dex,importaddress,symbol,address); TWO_STRINGS(dex,validateaddress,symbol,address); TWO_STRINGS(dex,checkaddress,symbol,address); TWO_STRINGS(dex,listunspent,symbol,address); TWO_STRINGS_AND_TWO_DOUBLES(dex,listtransactions,symbol,address,count,skip); TWO_STRINGS(dex,listunspent2,symbol,address); TWO_STRINGS_AND_TWO_DOUBLES(dex,listtransactions2,symbol,address,count,skip); HASH_AND_STRING_AND_INT(dex,gettxin,txid,symbol,vout); TWO_STRINGS(dex,listspent,symbol,address); TWO_STRINGS(dex,getbalance,symbol,address); STRING_ARG(dex,explorer,symbol); STRING_ARG(dex,getmessage,argstr); STRING_ARG(dex,psock,argstr); ZERO_ARGS(bitcoinrpc,getinfo); ZERO_ARGS(bitcoinrpc,getblockcount); ZERO_ARGS(bitcoinrpc,getdifficulty); ZERO_ARGS(bitcoinrpc,getbestblockhash); INT_ARG(bitcoinrpc,getblockhash,height); HASH_AND_TWOINTS(bitcoinrpc,getblock,blockhash,verbose,remoteonly); HASH_AND_INT(bitcoinrpc,getrawtransaction,txid,verbose); HASH_ARG(bitcoinrpc,gettransaction,txid); HASH_AND_TWOINTS(bitcoinrpc,gettxout,txid,vout,mempool); TWOINTS_AND_ARRAY(bitcoinrpc,listunspent,minconf,maxconf,array); STRING_ARG(bitcoinrpc,decodescript,scriptstr); //STRING_ARG(bitcoinrpc,decoderawtransaction,rawtx); STRING_AND_INT(bitcoinrpc,decoderawtransaction,rawtx,suppress); STRING_AND_INT(bitcoinrpc,validaterawtransaction,rawtx,suppress); ARRAY_OBJ_INT(bitcoinrpc,createrawtransaction,vins,vouts,locktime); STRING_ARG(bitcoinrpc,validatepubkey,pubkey); STRING_ARG(bitcoinrpc,validateaddress,address); ZERO_ARGS(bitcoinrpc,walletlock); TWOSTRINGS_AND_INT(bitcoinrpc,walletpassphrase,password,permanentfile,timeout); THREE_STRINGS(bitcoinrpc,encryptwallet,passphrase,password,permanentfile); FOUR_STRINGS(bitcoinrpc,walletpassphrasechange,oldpassword,newpassword,oldpermanentfile,permanentfile); STRING_ARG(bitcoinrpc,dumpwallet,filename); STRING_ARG(bitcoinrpc,backupwallet,filename); STRING_ARG(bitcoinrpc,importwallet,filename); STRING_ARG(bitcoinrpc,getnewaddress,account); TWOSTRINGS_AND_INT(bitcoinrpc,importprivkey,wif,account,rescan); TWOSTRINGS_AND_INT(bitcoinrpc,importaddress,address,account,rescan); STRING_ARG(bitcoinrpc,dumpprivkey,address); STRING_AND_THREEINTS(bitcoinrpc,listtransactions,account,count,skip,includewatchonly); THREE_INTS(bitcoinrpc,listreceivedbyaddress,minconf,includeempty,flag); THREE_INTS(bitcoinrpc,listreceivedbyaccount,confirmations,includeempty,watchonly); TWO_INTS(bitcoinrpc,listaccounts,minconf,includewatchonly); ZERO_ARGS(bitcoinrpc,listaddressgroupings); STRING_AND_INT(bitcoinrpc,getreceivedbyaddress,address,minconf); STRING_AND_INT(bitcoinrpc,getreceivedbyaccount,account,includeempty); STRING_AND_THREEINTS(bitcoinrpc,getbalance,account,confirmations,includeempty,lastheight); STRING_ARG(bitcoinrpc,getaddressesbyaccount,account); STRING_ARG(bitcoinrpc,getaccount,address); STRING_ARG(bitcoinrpc,getaccountaddress,account); TWO_STRINGS(bitcoinrpc,setaccount,address,account); INT_ARRAY_STRING(bitcoinrpc,createmultisig,M,pubkeys,ignore); INT_ARRAY_STRING(bitcoinrpc,addmultisigaddress,M,pubkeys,account); DOUBLE_ARG(bitcoinrpc,settxfee,amount); ZERO_ARGS(bitcoinrpc,checkwallet); ZERO_ARGS(bitcoinrpc,repairwallet); STRING_ARRAY_OBJ_STRING(bitcoinrpc,signrawtransaction,rawtx,vins,privkeys,sighash); TWO_STRINGS(bitcoinrpc,signmessage,address,message); THREE_STRINGS(bitcoinrpc,verifymessage,address,sig,message); STRING_AND_INT(bitcoinrpc,sendrawtransaction,rawtx,allowhighfees); SS_D_I_SS(bitcoinrpc,sendfrom,fromaccount,toaddress,amount,minconf,comment,comment2); S_A_I_S(bitcoinrpc,sendmany,fromaccount,payments,minconf,comment); S_D_SS(bitcoinrpc,sendtoaddress,address,amount,comment,comment2); INT_AND_ARRAY(bitcoinrpc,lockunspent,flag,array); // ZERO_ARGS(bitcoinrpc,listlockunspent); // STRING_ARG(bitcoinrpc,submitblock,rawbytes); // // maybe later HASH_AND_TWOINTS(bitcoinrpc,listsinceblock,blockhash,target,flag); ZERO_ARGS(bitcoinrpc,gettxoutsetinfo); ZERO_ARGS(bitcoinrpc,getrawchangeaddress); SS_D_I_S(bitcoinrpc,move,fromaccount,toaccount,amount,minconf,comment); THREE_INTS(dragon,splitfunds,satoshis,duplicates,sendflag); ZERO_ARGS(dragon,makekeypair); INT_AND_ARRAY(dragon,rates,unused,quotes); TWO_STRINGS(dragon,rate,base,rel); THREE_STRINGS_AND_THREE_INTS(dragon,prices,exchange,base,rel,period,start,end); STRING_AND_INT(dragon,snapshot,symbol,height); INT_ARRAY_STRING(dragon,dividends,height,vals,symbol); THREE_STRINGS(dragon,passthru,asset,function,hex); STRING_ARG(dragon,initfastfind,activecoin); THREE_STRINGS_AND_DOUBLE(dragon,dpow,symbol,dest,pubkey,freq); STRING_ARG(dragon,peers,activecoin); STRING_AND_INT(dragon,maxpeers,activecoin,max); STRING_ARG(dragon,getconnectioncount,activecoin); STRING_ARG(dragon,addcoin,newcoin); STRING_ARG(dragon,validate,activecoin); STRING_ARG(dragon,removecoin,activecoin); STRING_ARG(dragon,startcoin,activecoin); STRING_ARG(dragon,pausecoin,activecoin); STRING_ARG(dragon,stopcoin,activecoin); TWO_STRINGS(dragon,addnode,activecoin,ipaddr); STRING_ARG(dragon,addnotary,ipaddr); TWO_STRINGS(dragon,persistent,activecoin,ipaddr); TWO_STRINGS(dragon,removenode,activecoin,ipaddr); TWO_STRINGS(dragon,oneshot,activecoin,ipaddr); TWO_STRINGS(dragon,nodestatus,activecoin,ipaddr); TWO_STRINGS_AND_TWO_DOUBLES(dragon,balance,activecoin,address,heightd,minconfd); P2SH_SPENDAPI(dragon,spendmsig,activecoin,vintxid,vinvout,destaddress,destamount,destaddress2,destamount2,M,N,pubA,wifA,pubB,wifB,pubC,wifC); // SuperNET, how the mighty have fallen, at the hands of jl777, Master Of KYC ZERO_ARGS(SuperNET,help); STRING_ARG(SuperNET,utime2utc,utime); INT_ARG(SuperNET,utc2utime,utc); STRING_ARG(SuperNET,getpeers,activecoin); TWO_ARRAYS(SuperNET,mypeers,supernet,rawpeers); ZERO_ARGS(SuperNET,stop); HASH_AND_STRING(SuperNET,saveconf,wallethash,confjsonstr); HASH_ARRAY_STRING(SuperNET,layer,mypriv,otherpubs,str); STRING_ARG(SuperNET,bitcoinrpc,setcoin); STRING_ARG(SuperNET,myipaddr,ipaddr); STRING_ARG(SuperNET,setmyipaddr,ipaddr); FOUR_STRINGS(SuperNET,login,handle,password,permanentfile,passphrase); ZERO_ARGS(SuperNET,logout); ZERO_ARGS(SuperNET,activehandle); THREE_STRINGS(SuperNET,encryptjson,password,permanentfile,payload); TWO_STRINGS(SuperNET,decryptjson,password,permanentfile); TWO_STRINGS(SuperNET,html,agentform,htmlfile); THREE_STRINGS(SuperNET,rosetta,passphrase,pin,showprivkey); ZERO_ARGS(SuperNET,keypair); HASH_AND_INT(SuperNET,priv2pub,privkey,addrtype); STRING_ARG(SuperNET,wif2priv,wif); STRING_AND_INT(SuperNET,priv2wif,priv,wiftype); STRING_ARG(SuperNET,addr2rmd160,address); STRING_ARG(SuperNET,rmd160conv,rmd160); TWOHASHES_AND_STRING(SuperNET,cipher,privkey,destpubkey,message); TWOHASHES_AND_STRING(SuperNET,decipher,privkey,srcpubkey,cipherstr); STRING_ARG(SuperNET,broadcastcipher,message); STRING_ARG(SuperNET,broadcastdecipher,message); HASH_AND_STRING(SuperNET,multicastcipher,pubkey,message); HASH_AND_STRING(SuperNET,multicastdecipher,privkey,cipherstr); /*TWO_STRINGS(SuperNET,subscribe,category,subcategory); TWO_STRINGS(SuperNET,gethexmsg,category,subcategory); THREE_STRINGS(SuperNET,posthexmsg,category,subcategory,hexmsg); THREE_STRINGS(SuperNET,announce,category,subcategory,message); THREE_STRINGS(SuperNET,survey,category,subcategory,message); TWO_STRINGS(SuperNET,categoryhashes,category,subcategory);*/ STRING_AND_TWOINTS(mouse,image,name,x,y); STRING_AND_TWOINTS(mouse,change,name,x,y); STRING_AND_TWOINTS(mouse,click,name,x,y); STRING_ARG(mouse,close,name); STRING_ARG(mouse,leave,name); STRING_AND_INT(keyboard,key,name,c); STRING_ARG(hash,hex,message); STRING_ARG(hash,unhex,hexmsg); TWO_HASHES(hash,curve25519_pair,element,scalar); STRING_ARG(hash,NXT,passphrase); STRING_ARG(hash,curve25519,pubkey); STRING_ARG(hash,crc32,message); STRING_ARG(hash,base64_encode,message); STRING_ARG(hash,base64_decode,message); STRING_ARG(hash,rmd160_sha256,message); STRING_ARG(hash,sha256_sha256,message); #ifndef WIN32 STRING_ARG(hash,sha224,message); STRING_ARG(hash,sha256,message); STRING_ARG(hash,sha384,message); STRING_ARG(hash,sha512,message); STRING_ARG(hash,rmd128,message); STRING_ARG(hash,rmd160,message); STRING_ARG(hash,rmd256,message); STRING_ARG(hash,rmd320,message); STRING_ARG(hash,sha1,message); STRING_ARG(hash,md2,message); STRING_ARG(hash,md4,message); STRING_ARG(hash,md5,message); STRING_ARG(hash,tiger192_3,message); STRING_ARG(hash,whirlpool,message); TWO_STRINGS(hmac,sha224,message,passphrase); TWO_STRINGS(hmac,sha256,message,passphrase); TWO_STRINGS(hmac,sha384,message,passphrase); TWO_STRINGS(hmac,sha512,message,passphrase); TWO_STRINGS(hmac,rmd128,message,passphrase); TWO_STRINGS(hmac,rmd160,message,passphrase); TWO_STRINGS(hmac,rmd256,message,passphrase); TWO_STRINGS(hmac,rmd320,message,passphrase); TWO_STRINGS(hmac,sha1,message,passphrase); TWO_STRINGS(hmac,md2,message,passphrase); TWO_STRINGS(hmac,md4,message,passphrase); TWO_STRINGS(hmac,md5,message,passphrase); TWO_STRINGS(hmac,tiger192_3,message,passphrase); TWO_STRINGS(hmac,whirlpool,message,passphrase); #endif #endif