From 37e5c1d4600183b9b5f95184a6141448ac7c7ebb Mon Sep 17 00:00:00 2001
From: Torsten Grote <t@grobox.de>
Date: Tue, 2 May 2023 15:10:40 -0300
Subject: [PATCH] Expose getObfs4ExecutableFile()

---
 .../org/briarproject/onionwrapper/AndroidTorWrapper.java    | 2 +-
 .../org/briarproject/onionwrapper/AbstractTorWrapper.java   | 3 ++-
 .../main/java/org/briarproject/onionwrapper/TorWrapper.java | 6 ++++++
 3 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/onionwrapper-android/src/main/java/org/briarproject/onionwrapper/AndroidTorWrapper.java b/onionwrapper-android/src/main/java/org/briarproject/onionwrapper/AndroidTorWrapper.java
index 137d9ea..9ddf657 100644
--- a/onionwrapper-android/src/main/java/org/briarproject/onionwrapper/AndroidTorWrapper.java
+++ b/onionwrapper-android/src/main/java/org/briarproject/onionwrapper/AndroidTorWrapper.java
@@ -133,7 +133,7 @@ public class AndroidTorWrapper extends AbstractTorWrapper {
 	}
 
 	@Override
-	protected File getObfs4ExecutableFile() {
+    public File getObfs4ExecutableFile() {
 		return obfs4Lib.exists() ? obfs4Lib : super.getObfs4ExecutableFile();
 	}
 
diff --git a/onionwrapper-core/src/main/java/org/briarproject/onionwrapper/AbstractTorWrapper.java b/onionwrapper-core/src/main/java/org/briarproject/onionwrapper/AbstractTorWrapper.java
index fb77222..fb5f192 100644
--- a/onionwrapper-core/src/main/java/org/briarproject/onionwrapper/AbstractTorWrapper.java
+++ b/onionwrapper-core/src/main/java/org/briarproject/onionwrapper/AbstractTorWrapper.java
@@ -107,7 +107,8 @@ abstract class AbstractTorWrapper implements EventHandler, TorWrapper {
 		return new File(torDirectory, "tor");
 	}
 
-	protected File getObfs4ExecutableFile() {
+    @Override
+	public File getObfs4ExecutableFile() {
 		return new File(torDirectory, "obfs4proxy");
 	}
 
diff --git a/onionwrapper-core/src/main/java/org/briarproject/onionwrapper/TorWrapper.java b/onionwrapper-core/src/main/java/org/briarproject/onionwrapper/TorWrapper.java
index a72ac10..21d0510 100644
--- a/onionwrapper-core/src/main/java/org/briarproject/onionwrapper/TorWrapper.java
+++ b/onionwrapper-core/src/main/java/org/briarproject/onionwrapper/TorWrapper.java
@@ -2,6 +2,7 @@ package org.briarproject.onionwrapper;
 
 import org.briarproject.nullsafety.NotNullByDefault;
 
+import java.io.File;
 import java.io.IOException;
 import java.util.List;
 import java.util.logging.Logger;
@@ -99,6 +100,11 @@ public interface TorWrapper {
 	 */
 	void enableIpv6(boolean ipv6Only) throws IOException;
 
+    /**
+     * Returns the Obfs4 executable as a File for use with Moat.
+     */
+    File getObfs4ExecutableFile();
+
 	/**
 	 * The state of the Tor wrapper.
 	 */
-- 
GitLab