Skip to content

Commit e6f1f97

Browse files
committed
Merge #203: Implement clearbanned method and test
42c1e22 Implement clearbanned method and test (GideonBature) Pull request description: Going by the conversations with tcharding for PR [#116 ](#116) on implementing one method at a time for easier review: This is the clearbanned method which is a specific type that returns a (json null). Once this is approved, I’ll proceed with the next one. ACKs for top commit: tcharding: ACK 42c1e22 Tree-SHA512: 24b86868139c63d682423e93b362dcb930b4d2ed909b099786612b8a52c2ba993c8323b2332aa45e6c58097a412187e07508fc847ab228dc09499e301b3b3fb2
2 parents 2ab61d0 + 42c1e22 commit e6f1f97

File tree

15 files changed

+38
-0
lines changed

15 files changed

+38
-0
lines changed

client/src/client_sync/v17/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ crate::impl_client_v17__submitblock!();
7272

7373
// == Network ==
7474
crate::impl_client_v17__addnode!();
75+
crate::impl_client_v17__clearbanned!();
7576
crate::impl_client_v17__getaddednodeinfo!();
7677
crate::impl_client_v17__getnettotals!();
7778
crate::impl_client_v17__getnetworkinfo!();

client/src/client_sync/v17/network.rs

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,22 @@ macro_rules! impl_client_v17__addnode {
2525
};
2626
}
2727

28+
/// Implements Bitcoin Core JSON-RPC API method `clearbanned`
29+
#[macro_export]
30+
macro_rules! impl_client_v17__clearbanned {
31+
() => {
32+
impl Client {
33+
pub fn clear_banned(&self) -> Result<()> {
34+
match self.call("clearbanned", &[]) {
35+
Ok(serde_json::Value::Null) => Ok(()),
36+
Ok(res) => Err(Error::Returned(res.to_string())),
37+
Err(err) => Err(err.into()),
38+
}
39+
}
40+
}
41+
};
42+
}
43+
2844
/// Implements Bitcoin Core JSON-RPC API method `getaddednodeinfo`
2945
#[macro_export]
3046
macro_rules! impl_client_v17__getaddednodeinfo {

client/src/client_sync/v18/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ crate::impl_client_v17__submitblock!();
7676

7777
// == Network ==
7878
crate::impl_client_v17__addnode!();
79+
crate::impl_client_v17__clearbanned!();
7980
crate::impl_client_v17__getaddednodeinfo!();
8081
crate::impl_client_v17__getnettotals!();
8182
crate::impl_client_v17__getnetworkinfo!();

client/src/client_sync/v19/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@ crate::impl_client_v17__submitblock!();
7474

7575
// == Network ==
7676
crate::impl_client_v17__addnode!();
77+
crate::impl_client_v17__clearbanned!();
7778
crate::impl_client_v17__getaddednodeinfo!();
7879
crate::impl_client_v17__getnettotals!();
7980
crate::impl_client_v17__getnetworkinfo!();

client/src/client_sync/v20.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ crate::impl_client_v17__submitblock!();
7171

7272
// == Network ==
7373
crate::impl_client_v17__addnode!();
74+
crate::impl_client_v17__clearbanned!();
7475
crate::impl_client_v17__getaddednodeinfo!();
7576
crate::impl_client_v17__getnettotals!();
7677
crate::impl_client_v17__getnetworkinfo!();

client/src/client_sync/v21/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ crate::impl_client_v17__submitblock!();
7373

7474
// == Network ==
7575
crate::impl_client_v17__addnode!();
76+
crate::impl_client_v17__clearbanned!();
7677
crate::impl_client_v17__getaddednodeinfo!();
7778
crate::impl_client_v17__getnettotals!();
7879
crate::impl_client_v17__getnetworkinfo!();

client/src/client_sync/v22/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ crate::impl_client_v17__submitblock!();
7373

7474
// == Network ==
7575
crate::impl_client_v17__addnode!();
76+
crate::impl_client_v17__clearbanned!();
7677
crate::impl_client_v17__getaddednodeinfo!();
7778
crate::impl_client_v17__getnettotals!();
7879
crate::impl_client_v17__getnetworkinfo!();

client/src/client_sync/v23/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ crate::impl_client_v17__submitblock!();
7575

7676
// == Network ==
7777
crate::impl_client_v17__addnode!();
78+
crate::impl_client_v17__clearbanned!();
7879
crate::impl_client_v17__getaddednodeinfo!();
7980
crate::impl_client_v17__getnettotals!();
8081
crate::impl_client_v17__getnetworkinfo!();

client/src/client_sync/v24.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ crate::impl_client_v17__submitblock!();
7272

7373
// == Network ==
7474
crate::impl_client_v17__addnode!();
75+
crate::impl_client_v17__clearbanned!();
7576
crate::impl_client_v17__getaddednodeinfo!();
7677
crate::impl_client_v17__getnettotals!();
7778
crate::impl_client_v17__getnetworkinfo!();

client/src/client_sync/v25.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ crate::impl_client_v17__submitblock!();
7272

7373
// == Network ==
7474
crate::impl_client_v17__addnode!();
75+
crate::impl_client_v17__clearbanned!();
7576
crate::impl_client_v17__getaddednodeinfo!();
7677
crate::impl_client_v17__getnettotals!();
7778
crate::impl_client_v17__getnetworkinfo!();

client/src/client_sync/v26/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ crate::impl_client_v17__submitblock!();
7777

7878
// == Network ==
7979
crate::impl_client_v17__addnode!();
80+
crate::impl_client_v17__clearbanned!();
8081
crate::impl_client_v17__getaddednodeinfo!();
8182
crate::impl_client_v17__getnettotals!();
8283
crate::impl_client_v17__getnetworkinfo!();

client/src/client_sync/v27.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ crate::impl_client_v17__submitblock!();
7373

7474
// == Network ==
7575
crate::impl_client_v17__addnode!();
76+
crate::impl_client_v17__clearbanned!();
7677
crate::impl_client_v17__getaddednodeinfo!();
7778
crate::impl_client_v17__getnettotals!();
7879
crate::impl_client_v17__getnetworkinfo!();

client/src/client_sync/v28/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ crate::impl_client_v17__submitblock!();
7575

7676
// == Network ==
7777
crate::impl_client_v17__addnode!();
78+
crate::impl_client_v17__clearbanned!();
7879
crate::impl_client_v17__getaddednodeinfo!();
7980
crate::impl_client_v17__getnettotals!();
8081
crate::impl_client_v17__getnetworkinfo!();

client/src/client_sync/v29/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ crate::impl_client_v17__submitblock!();
7575

7676
// == Network ==
7777
crate::impl_client_v17__addnode!();
78+
crate::impl_client_v17__clearbanned!();
7879
crate::impl_client_v17__getaddednodeinfo!();
7980
crate::impl_client_v17__getnettotals!();
8081
crate::impl_client_v17__getnetworkinfo!();

integration_test/tests/network.rs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,15 @@ fn network__add_node() {
2424
node.client.add_node(dummy_peer, AddNodeCommand::Remove).expect("addnode remove");
2525
}
2626

27+
#[test]
28+
fn network__clear_banned() {
29+
let node = Node::with_wallet(Wallet::None, &[]);
30+
let dummy_subnet = "192.0.2.2";
31+
32+
node.client.set_ban(dummy_subnet, SetBanCommand::Add).expect("setban add");
33+
node.client.clear_banned().expect("clearbanned");
34+
}
35+
2736
#[test]
2837
fn network__get_added_node_info() {
2938
let node = Node::with_wallet(Wallet::None, &[]);

0 commit comments

Comments
 (0)