diff --git a/dash-docs/protocol-documentation.md b/dash-docs/protocol-documentation.md index 6d70fb534..f20d928af 100644 --- a/dash-docs/protocol-documentation.md +++ b/dash-docs/protocol-documentation.md @@ -164,6 +164,26 @@ User's signed inputs for a group transaction in a mixing session | ---------- | ----------- | --------- | -------- | | # | inputs | CTxIn[] | signed inputs for mixing session + +### TXLOCKREQUEST - "ix" + +CTxLockRequest + +Transaction Lock Request, serialization is the same as for CTransaction. + +### TXLOCKVOTE - "txlvote" + +CTxLockVote + +Transaction Lock Vote + +| Field Size | Field Name | Data type | Description | +| ---------- | ----------- | --------- | -------- | +| 32 | txHash | uint256 | txid of the transaction to lock +| 36 | outpoint | COutPoint | The utxo to lock in this transaction +| 36 | outpointMasternode | COutPoint | The utxo of the masternode which is signing the vote +| 71-73 | vchMasternodeSignature | char[] | Signature of this message by masternode (verifiable via pubKeyMasternode) + ### MNGOVERNANCEOBJECT - "govobj" Governance Object @@ -189,9 +209,9 @@ Masternodes use governance voting in response to new proposals, contracts, setti | Field Size | Field Name | Data type | Description | | ---------- | ----------- | --------- | -------- | -| 4 | nVoteSignal | int | ??? | 41+ | vinMasternode | CTxIn | Unspent output for the masternode which is voting | 32 | nParentHash | uint256 | Object which we're voting on (proposal, contract, setting or final budget) | 4 | nVoteOutcome | int | ??? +| 4 | nVoteSignal | int | ??? | 8 | nTime | int64_t | Time which the vote was created | 71-73 | vchSig | char[] | Signature of the masternode diff --git a/doc/build-osx.md b/doc/build-osx.md index dec2593de..42221cb34 100644 --- a/doc/build-osx.md +++ b/doc/build-osx.md @@ -32,9 +32,10 @@ Instructions: Homebrew #### Install dependencies using Homebrew - brew install autoconf automake berkeley-db4 libtool boost miniupnpc openssl pkg-config protobuf qt5 libevent + brew install autoconf automake berkeley-db4 libtool boost miniupnpc openssl pkg-config protobuf libevent -NOTE: Building with Qt4 is still supported, however, could result in a broken UI. As such, building with Qt5 is recommended. +NOTE: Building with Qt4 is still supported, however, could result in a broken UI. As such, building with Qt5 is recommended. Qt5 5.7 requires C++11 which Dash Core doesn't fully support yet, Qt5 5.6.2 has some other issues, so make sure to install Qt version < 5.6.2 (5.6.1-1 is recommended). + brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/e6d954bab88e89c5582498157077756900865070/Formula/qt5.rb ### Building Dash Core diff --git a/doc/developer-notes.md b/doc/developer-notes.md index 62a4e35d6..75a1e0f51 100644 --- a/doc/developer-notes.md +++ b/doc/developer-notes.md @@ -110,7 +110,7 @@ to see it. **testnet and regtest modes** -Run with the -testnet option to run with "play bitcoins" on the test network, if you +Run with the -testnet option to run with "play coins" on the test network, if you are testing multi-machine code that needs to operate across the internet. If you are testing something that can run on one machine, run with the -regtest option. @@ -154,7 +154,7 @@ Threads - ThreadMapPort : Universal plug-and-play startup/shutdown -- ThreadSocketHandler : Sends/Receives data from peers on port 8333. +- ThreadSocketHandler : Sends/Receives data from peers on port 9999. - ThreadOpenAddedConnections : Opens network connections to added nodes. @@ -168,7 +168,7 @@ Threads - ThreadRPCServer : Remote procedure call handler, listens on port 9998 for connections and services them. -- BitcoinMiner : Generates bitcoins (if wallet is enabled). +- BitcoinMiner : Generates coins (if wallet is enabled). - ThreadCheckDarkSendPool : Runs masternode list and sync data update loops diff --git a/src/activemasternode.cpp b/src/activemasternode.cpp index cacb7c03d..ba17da51a 100644 --- a/src/activemasternode.cpp +++ b/src/activemasternode.cpp @@ -242,7 +242,7 @@ void CActiveMasternode::ManageStateRemote() } if(service != infoMn.addr) { nState = ACTIVE_MASTERNODE_NOT_CAPABLE; - strNotCapableReason = "Specified IP doesn't match our external address."; + strNotCapableReason = "Broadcasted IP doesn't match our external address. Make sure you issued a new broadcast if IP of this masternode changed recently."; LogPrintf("CActiveMasternode::ManageStateRemote -- %s: %s\n", GetStateString(), strNotCapableReason); return; } diff --git a/src/masternode-payments.cpp b/src/masternode-payments.cpp index 2ed1589b9..c4709f7c9 100644 --- a/src/masternode-payments.cpp +++ b/src/masternode-payments.cpp @@ -915,7 +915,7 @@ void CMasternodePayments::RequestLowDataPaymentBlocks(CNode* pnode) } // We should not violate GETDATA rules if(vToFetch.size() == MAX_INV_SZ) { - LogPrintf("CMasternodePayments::SyncLowDataPaymentBlocks -- asking peer %d for %d blocks\n", pnode->id, MAX_INV_SZ); + LogPrintf("CMasternodePayments::SyncLowDataPaymentBlocks -- asking peer %d for %d payment blocks\n", pnode->id, MAX_INV_SZ); pnode->PushMessage(NetMsgType::GETDATA, vToFetch); // Start filling new batch vToFetch.clear(); @@ -924,7 +924,7 @@ void CMasternodePayments::RequestLowDataPaymentBlocks(CNode* pnode) } // Ask for the rest of it if(!vToFetch.empty()) { - LogPrintf("CMasternodePayments::SyncLowDataPaymentBlocks -- asking peer %d for %d blocks\n", pnode->id, vToFetch.size()); + LogPrintf("CMasternodePayments::SyncLowDataPaymentBlocks -- asking peer %d for %d payment blocks\n", pnode->id, vToFetch.size()); pnode->PushMessage(NetMsgType::GETDATA, vToFetch); } } diff --git a/src/masternode-sync.cpp b/src/masternode-sync.cpp index ac0c69f7e..38d79d619 100644 --- a/src/masternode-sync.cpp +++ b/src/masternode-sync.cpp @@ -274,7 +274,7 @@ void CMasternodeSync::ProcessTick() { if(IsSynced()) { /* - Resync if we lose all masternodes from sleep/wake or failure to sync originally + Resync if we lost all masternodes from sleep/wake or failed to sync originally */ if(nMnCount == 0) { LogPrintf("CMasternodeSync::ProcessTick -- WARNING: not enough data, restarting sync\n"); @@ -362,8 +362,8 @@ void CMasternodeSync::ProcessTick() // NORMAL NETWORK MODE - TESTNET/MAINNET { if(netfulfilledman.HasFulfilledRequest(pnode->addr, "full-sync")) { - // we already fully synced from this node recently, - // disconnect to free this connection slot for a new node + // We already fully synced from this node recently, + // disconnect to free this connection slot for another peer. pnode->fDisconnect = true; LogPrintf("CMasternodeSync::ProcessTick -- disconnecting from recently synced peer %d\n", pnode->id); continue; diff --git a/src/miner.cpp b/src/miner.cpp index 66ecbf60b..d8fef7073 100644 --- a/src/miner.cpp +++ b/src/miner.cpp @@ -283,7 +283,7 @@ CBlockTemplate* CreateNewBlock(const CChainParams& chainparams, const CScript& s txNew.vout[0].nValue = blockReward; txNew.vin[0].scriptSig = CScript() << nHeight << OP_0; - // Update coinbase transaction with additional info about masternode and governace payments, + // Update coinbase transaction with additional info about masternode and governance payments, // get some info back to pass to getblocktemplate FillBlockPayments(txNew, nHeight, blockReward, pblock->txoutMasternode, pblock->voutSuperblock); // LogPrintf("CreateNewBlock -- nBlockHeight %d blockReward %lld txoutMasternode %s txNew %s", diff --git a/src/qt/forms/masternodelist.ui b/src/qt/forms/masternodelist.ui index d01254dd0..e41d1dbd5 100644 --- a/src/qt/forms/masternodelist.ui +++ b/src/qt/forms/masternodelist.ui @@ -67,7 +67,7 @@ - Note: Status of your masternodes in local wallet can potentially be slightly incorrect.<br />Always wait for wallet to sync additional data and then double check from another node<br />if your node should be running but you still see "MISSING" in "Status" field. + Note: Status of your masternodes in local wallet can potentially be slightly incorrect.<br />Always wait for wallet to sync additional data and then double check from another node<br />if your masternode should be running but you still do not see "ENABLED" in "Status" field. @@ -134,7 +134,7 @@ - Pubkey + Payee @@ -257,7 +257,7 @@ - Pubkey + Payee diff --git a/src/qt/forms/optionsdialog.ui b/src/qt/forms/optionsdialog.ui index 724467194..a41f13a72 100644 --- a/src/qt/forms/optionsdialog.ui +++ b/src/qt/forms/optionsdialog.ui @@ -505,7 +505,7 @@ - Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor hidden services. + Connect to the Dash network through a separate SOCKS5 proxy for Tor hidden services. Use separate SOCKS5 proxy to reach peers via Tor hidden services: diff --git a/src/qt/forms/signverifymessagedialog.ui b/src/qt/forms/signverifymessagedialog.ui index d7d966a33..bc921b182 100644 --- a/src/qt/forms/signverifymessagedialog.ui +++ b/src/qt/forms/signverifymessagedialog.ui @@ -30,7 +30,7 @@ - You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. + You can sign messages/agreements with your addresses to prove you can receive Dash sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. Qt::PlainText diff --git a/src/qt/utilitydialog.cpp b/src/qt/utilitydialog.cpp index 74cf8a44a..a93f4c638 100644 --- a/src/qt/utilitydialog.cpp +++ b/src/qt/utilitydialog.cpp @@ -141,7 +141,7 @@ You retain control of your money at all times..
\ The PrivateSend process works like this:\
    \
  1. PrivateSend begins by breaking your transaction inputs down into standard denominations. \ -These denominations are 0.01 DASH, 0.1 DASH, 1 DASH, and 10 DASH--sort of like the paper money you use every day.
  2. \ +These denominations are 0.01 DASH, 0.1 DASH, 1 DASH and 10 DASH -- sort of like the paper money you use every day. \
  3. Your wallet then sends requests to specially configured software nodes on the network, called \"masternodes.\" \ These masternodes are informed then that you are interested in mixing a certain denomination. \ No identifiable information is sent to the masternodes, so they never know \"who\" you are.
  4. \ diff --git a/src/wallet/rpcwallet.cpp b/src/wallet/rpcwallet.cpp index 4600546cd..a82de3fa4 100644 --- a/src/wallet/rpcwallet.cpp +++ b/src/wallet/rpcwallet.cpp @@ -422,7 +422,7 @@ UniValue sendtoaddress(const UniValue& params, bool fHelp) " to which you're sending the transaction. This is not part of the \n" " transaction, just kept in your wallet.\n" "5. subtractfeefromamount (boolean, optional, default=false) The fee will be deducted from the amount being sent.\n" - " The recipient will receive less bitcoins than you enter in the amount field.\n" + " The recipient will receive less amount of Dash than you enter in the amount field.\n" "6. \"use_is\" (bool, optional) Send this transaction as InstantSend (default: false)\n" "7. \"use_ps\" (bool, optional) Use anonymized funds only (default: false)\n" "\nResult:\n" @@ -489,7 +489,7 @@ UniValue instantsendtoaddress(const UniValue& params, bool fHelp) " to which you're sending the transaction. This is not part of the \n" " transaction, just kept in your wallet.\n" "5. subtractfeefromamount (boolean, optional, default=false) The fee will be deducted from the amount being sent.\n" - " The recipient will receive less bitcoins than you enter in the amount field.\n" + " The recipient will receive less amount of Dash than you enter in the amount field.\n" "\nResult:\n" "\"transactionid\" (string) The transaction id.\n" "\nExamples:\n"