@@ -702,9 +702,7 @@ static RPCHelpMan setban()
702
702
throw std::runtime_error (help.ToString ());
703
703
}
704
704
NodeContext& node = EnsureAnyNodeContext (request.context );
705
- if (!node.banman ) {
706
- throw JSONRPCError (RPC_DATABASE_ERROR, " Error: Ban database not loaded" );
707
- }
705
+ BanMan& banman = EnsureBanman (node);
708
706
709
707
CSubNet subNet;
710
708
CNetAddr netAddr;
@@ -726,7 +724,7 @@ static RPCHelpMan setban()
726
724
727
725
if (strCommand == " add" )
728
726
{
729
- if (isSubnet ? node. banman -> IsBanned (subNet) : node. banman -> IsBanned (netAddr)) {
727
+ if (isSubnet ? banman. IsBanned (subNet) : banman. IsBanned (netAddr)) {
730
728
throw JSONRPCError (RPC_CLIENT_NODE_ALREADY_ADDED, " Error: IP/Subnet already banned" );
731
729
}
732
730
@@ -741,20 +739,20 @@ static RPCHelpMan setban()
741
739
}
742
740
743
741
if (isSubnet) {
744
- node. banman -> Ban (subNet, banTime, absolute);
742
+ banman. Ban (subNet, banTime, absolute);
745
743
if (node.connman ) {
746
744
node.connman ->DisconnectNode (subNet);
747
745
}
748
746
} else {
749
- node. banman -> Ban (netAddr, banTime, absolute);
747
+ banman. Ban (netAddr, banTime, absolute);
750
748
if (node.connman ) {
751
749
node.connman ->DisconnectNode (netAddr);
752
750
}
753
751
}
754
752
}
755
753
else if (strCommand == " remove" )
756
754
{
757
- if (!( isSubnet ? node. banman -> Unban (subNet) : node. banman -> Unban (netAddr) )) {
755
+ if (!( isSubnet ? banman. Unban (subNet) : banman. Unban (netAddr) )) {
758
756
throw JSONRPCError (RPC_CLIENT_INVALID_IP_OR_SUBNET, " Error: Unban failed. Requested address/subnet was not previously manually banned." );
759
757
}
760
758
}
@@ -785,13 +783,10 @@ static RPCHelpMan listbanned()
785
783
},
786
784
[&](const RPCHelpMan& self, const JSONRPCRequest& request) -> UniValue
787
785
{
788
- NodeContext& node = EnsureAnyNodeContext (request.context );
789
- if (!node.banman ) {
790
- throw JSONRPCError (RPC_DATABASE_ERROR, " Error: Ban database not loaded" );
791
- }
786
+ BanMan& banman = EnsureAnyBanman (request.context );
792
787
793
788
banmap_t banMap;
794
- node. banman -> GetBanned (banMap);
789
+ banman. GetBanned (banMap);
795
790
const int64_t current_time{GetTime ()};
796
791
797
792
UniValue bannedAddresses (UniValue::VARR);
@@ -825,12 +820,9 @@ static RPCHelpMan clearbanned()
825
820
},
826
821
[&](const RPCHelpMan& self, const JSONRPCRequest& request) -> UniValue
827
822
{
828
- NodeContext& node = EnsureAnyNodeContext (request.context );
829
- if (!node.banman ) {
830
- throw JSONRPCError (RPC_DATABASE_ERROR, " Error: Ban database not loaded" );
831
- }
823
+ BanMan& banman = EnsureAnyBanman (request.context );
832
824
833
- node. banman -> ClearBanned ();
825
+ banman. ClearBanned ();
834
826
835
827
return UniValue::VNULL;
836
828
},
0 commit comments