@@ -940,6 +940,9 @@ void SendMoney(const CTxDestination& address, CAmount nValue, CWalletTx& wtxNew,
940940 if (nValue > pwalletMain->GetBalance ())
941941 throw JSONRPCError (RPC_WALLET_INSUFFICIENT_FUNDS, " Insufficient funds" );
942942
943+ if (!g_connman)
944+ throw JSONRPCError (RPC_CLIENT_P2P_DISABLED, " Error: Peer-to-peer functionality missing or disabled" );
945+
943946 std::string strError;
944947 if (pwalletMain->IsLocked ()) {
945948 strError = " Error: Wallet locked, unable to create transaction!" ;
@@ -959,7 +962,7 @@ void SendMoney(const CTxDestination& address, CAmount nValue, CWalletTx& wtxNew,
959962 LogPrintf (" SendMoney() : %s\n " , strError);
960963 throw JSONRPCError (RPC_WALLET_ERROR, strError);
961964 }
962- const CWallet::CommitResult&& res = pwalletMain->CommitTransaction (wtxNew, reservekey, (!fUseIX ? NetMsgType::TX : NetMsgType::IX));
965+ const CWallet::CommitResult&& res = pwalletMain->CommitTransaction (wtxNew, reservekey, g_connman. get (), (!fUseIX ? NetMsgType::TX : NetMsgType::IX));
963966 if (res.status != CWallet::CommitStatus::OK)
964967 throw JSONRPCError (RPC_WALLET_ERROR, res.ToString ());
965968}
@@ -1143,7 +1146,7 @@ UniValue delegatestake(const JSONRPCRequest& request)
11431146 CReserveKey reservekey (pwalletMain);
11441147 UniValue ret = CreateColdStakeDelegation (request.params , wtx, reservekey);
11451148
1146- const CWallet::CommitResult& res = pwalletMain->CommitTransaction (wtx, reservekey, NetMsgType::TX);
1149+ const CWallet::CommitResult& res = pwalletMain->CommitTransaction (wtx, reservekey, g_connman. get (), NetMsgType::TX);
11471150 if (res.status != CWallet::CommitStatus::OK)
11481151 throw JSONRPCError (RPC_WALLET_ERROR, res.ToString ());
11491152
@@ -1852,6 +1855,9 @@ UniValue sendmany(const JSONRPCRequest& request)
18521855
18531856 LOCK2 (cs_main, pwalletMain->cs_wallet );
18541857
1858+ if (!g_connman)
1859+ throw JSONRPCError (RPC_CLIENT_P2P_DISABLED, " Error: Peer-to-peer functionality missing or disabled" );
1860+
18551861 if (!IsDeprecatedRPCEnabled (" accounts" ) && !request.params [0 ].get_str ().empty ()) {
18561862 throw JSONRPCError (RPC_INVALID_PARAMETER, " Dummy value must be set to \"\" " );
18571863 }
@@ -1909,7 +1915,7 @@ UniValue sendmany(const JSONRPCRequest& request)
19091915 bool fCreated = pwalletMain->CreateTransaction (vecSend, wtx, keyChange, nFeeRequired, nChangePosInOut, strFailReason);
19101916 if (!fCreated )
19111917 throw JSONRPCError (RPC_WALLET_INSUFFICIENT_FUNDS, strFailReason);
1912- const CWallet::CommitResult& res = pwalletMain->CommitTransaction (wtx, keyChange);
1918+ const CWallet::CommitResult& res = pwalletMain->CommitTransaction (wtx, keyChange, g_connman. get () );
19131919 if (res.status != CWallet::CommitStatus::OK)
19141920 throw JSONRPCError (RPC_WALLET_ERROR, res.ToString ());
19151921
0 commit comments