From 066ae985c8133668ff68561790e2e5bcb6262c73 Mon Sep 17 00:00:00 2001 From: knaccc Date: Wed, 30 Jan 2019 16:33:00 +0000 Subject: [PATCH] all.destroy command to remove all tunnels --- README.md | 4 ++++ .../src/org/getmonero/i2p/zero/TunnelControl.java | 9 +++++++++ 2 files changed, 13 insertions(+) diff --git a/README.md b/README.md index 4e1ab20..ffa4e6d 100755 --- a/README.md +++ b/README.md @@ -119,6 +119,10 @@ specified host and port. Returns the I2P b32 destination address for the server `tunnel-control.sh socks.destroy ` +#### Destroy all tunnels. Returns "OK" + +`tunnel-control.sh all.destroy` + #### Start a SAM listener on port 7656. Returns "OK" `tunnel-control.sh sam.create` diff --git a/org.getmonero.i2p.zero/src/org/getmonero/i2p/zero/TunnelControl.java b/org.getmonero.i2p.zero/src/org/getmonero/i2p/zero/TunnelControl.java index 55004d1..cd173f6 100644 --- a/org.getmonero.i2p.zero/src/org/getmonero/i2p/zero/TunnelControl.java +++ b/org.getmonero.i2p.zero/src/org/getmonero/i2p/zero/TunnelControl.java @@ -374,6 +374,15 @@ public class TunnelControl implements Runnable { break; } + case "all.destroy": { + tunnelList.getTunnelsCopyStream().forEach(t -> { + t.destroy(); + tunnelList.removeTunnel(t); + }); + out.println("OK"); + break; + } + case "sam.create": { String[] samArgs = new String[]{"sam.keys", "127.0.0.1", "7656", "i2cp.tcp.host=127.0.0.1", "i2cp.tcp.port=7654"}; I2PAppContext context = router.getContext();