From e32313c30b5012fa0f67dfd93265bcdee4b5dc7c Mon Sep 17 00:00:00 2001 From: Torsten Grote <t@grobox.de> Date: Thu, 17 Nov 2016 17:06:26 -0200 Subject: [PATCH] Use namespaced strings for Transport IDs --- .../briarproject/android/NavDrawerActivity.java | 9 ++++++--- .../plugins/droidtooth/DroidtoothPlugin.java | 14 ++++++-------- .../src/org/briarproject/api/TransportId.java | 2 +- .../api/plugins/BluetoothConstants.java | 14 ++++++++++++++ .../briarproject/api/plugins/LanTcpConstants.java | 9 +++++++++ .../org/briarproject/api/plugins/TorConstants.java | 2 +- .../briarproject/api/plugins/WanTcpConstants.java | 9 +++++++++ .../keyagreement/PayloadParserImpl.java | 6 ++++-- .../org/briarproject/plugins/tcp/LanTcpPlugin.java | 3 +-- .../plugins/tcp/LanTcpPluginFactory.java | 4 +++- .../org/briarproject/plugins/tcp/WanTcpPlugin.java | 4 ++-- .../plugins/tcp/WanTcpPluginFactory.java | 4 +++- .../plugins/bluetooth/BluetoothPlugin.java | 13 +++++-------- .../plugins/bluetooth/BluetoothPluginFactory.java | 4 +++- .../plugins/file/RemovableDrivePlugin.java | 3 ++- .../briarproject/plugins/modem/ModemPlugin.java | 3 ++- 16 files changed, 71 insertions(+), 32 deletions(-) create mode 100644 briar-api/src/org/briarproject/api/plugins/BluetoothConstants.java create mode 100644 briar-api/src/org/briarproject/api/plugins/LanTcpConstants.java create mode 100644 briar-api/src/org/briarproject/api/plugins/WanTcpConstants.java diff --git a/briar-android/src/org/briarproject/android/NavDrawerActivity.java b/briar-android/src/org/briarproject/android/NavDrawerActivity.java index cc2fbbcbfb..c80310aa0c 100644 --- a/briar-android/src/org/briarproject/android/NavDrawerActivity.java +++ b/briar-android/src/org/briarproject/android/NavDrawerActivity.java @@ -29,6 +29,9 @@ import org.briarproject.android.forum.ForumListFragment; import org.briarproject.android.fragment.BaseFragment.BaseFragmentListener; import org.briarproject.android.privategroup.list.GroupListFragment; import org.briarproject.api.TransportId; +import org.briarproject.api.plugins.BluetoothConstants; +import org.briarproject.api.plugins.LanTcpConstants; +import org.briarproject.api.plugins.TorConstants; import java.util.ArrayList; import java.util.List; @@ -230,21 +233,21 @@ public class NavDrawerActivity extends BriarFragmentActivity implements transports = new ArrayList<>(3); Transport tor = new Transport(); - tor.id = new TransportId("tor"); + tor.id = TorConstants.ID; tor.enabled = controller.isTransportRunning(tor.id); tor.iconId = R.drawable.transport_tor; tor.textId = R.string.transport_tor; transports.add(tor); Transport bt = new Transport(); - bt.id = new TransportId("bt"); + bt.id = BluetoothConstants.ID; bt.enabled = controller.isTransportRunning(bt.id); bt.iconId = R.drawable.transport_bt; bt.textId = R.string.transport_bt; transports.add(bt); Transport lan = new Transport(); - lan.id = new TransportId("lan"); + lan.id = LanTcpConstants.ID; lan.enabled = controller.isTransportRunning(lan.id); lan.iconId = R.drawable.transport_lan; lan.textId = R.string.transport_lan; diff --git a/briar-android/src/org/briarproject/plugins/droidtooth/DroidtoothPlugin.java b/briar-android/src/org/briarproject/plugins/droidtooth/DroidtoothPlugin.java index f60e52bebb..7805acd868 100644 --- a/briar-android/src/org/briarproject/plugins/droidtooth/DroidtoothPlugin.java +++ b/briar-android/src/org/briarproject/plugins/droidtooth/DroidtoothPlugin.java @@ -65,26 +65,23 @@ import static java.util.concurrent.TimeUnit.MILLISECONDS; import static java.util.logging.Level.INFO; import static java.util.logging.Level.WARNING; import static org.briarproject.api.keyagreement.KeyAgreementConstants.TRANSPORT_ID_BLUETOOTH; +import static org.briarproject.api.plugins.BluetoothConstants.ID; +import static org.briarproject.api.plugins.BluetoothConstants.PROP_ADDRESS; +import static org.briarproject.api.plugins.BluetoothConstants.PROP_UUID; +import static org.briarproject.api.plugins.BluetoothConstants.UUID_BYTES; import static org.briarproject.util.PrivacyUtils.scrubMacAddress; @MethodsNotNullByDefault @ParametersNotNullByDefault class DroidtoothPlugin implements DuplexPlugin { - // Share an ID with the J2SE Bluetooth plugin - static final TransportId ID = new TransportId("bt"); - private static final Logger LOG = Logger.getLogger(DroidtoothPlugin.class.getName()); - private static final int UUID_BYTES = 16; private static final String FOUND = "android.bluetooth.device.action.FOUND"; private static final String DISCOVERY_FINISHED = "android.bluetooth.adapter.action.DISCOVERY_FINISHED"; - private static final String PROP_ADDRESS = "address"; - private static final String PROP_UUID = "uuid"; - private final Executor ioExecutor; private final AndroidExecutor androidExecutor; private final Context appContext; @@ -315,6 +312,7 @@ class DroidtoothPlugin implements DuplexPlugin { } } + @Nullable private BluetoothSocket connect(String address, String uuid) { // Validate the address if (!BluetoothAdapter.checkBluetoothAddress(address)) { @@ -646,7 +644,7 @@ class DroidtoothPlugin implements DuplexPlugin { private final BluetoothServerSocket ss; - BluetoothKeyAgreementListener(BdfList descriptor, + private BluetoothKeyAgreementListener(BdfList descriptor, BluetoothServerSocket ss) { super(descriptor); this.ss = ss; diff --git a/briar-api/src/org/briarproject/api/TransportId.java b/briar-api/src/org/briarproject/api/TransportId.java index 94e21cfa5d..b0ad34b094 100644 --- a/briar-api/src/org/briarproject/api/TransportId.java +++ b/briar-api/src/org/briarproject/api/TransportId.java @@ -10,7 +10,7 @@ public class TransportId { /** * The maximum length of transport identifier in UTF-8 bytes. */ - public static int MAX_TRANSPORT_ID_LENGTH = 10; + public static int MAX_TRANSPORT_ID_LENGTH = 64; private final String id; diff --git a/briar-api/src/org/briarproject/api/plugins/BluetoothConstants.java b/briar-api/src/org/briarproject/api/plugins/BluetoothConstants.java new file mode 100644 index 0000000000..3708df560a --- /dev/null +++ b/briar-api/src/org/briarproject/api/plugins/BluetoothConstants.java @@ -0,0 +1,14 @@ +package org.briarproject.api.plugins; + +import org.briarproject.api.TransportId; + +public interface BluetoothConstants { + + TransportId ID = new TransportId("org.briarproject.bramble.bluetooth"); + + int UUID_BYTES = 16; + + String PROP_ADDRESS = "address"; + String PROP_UUID = "uuid"; + +} diff --git a/briar-api/src/org/briarproject/api/plugins/LanTcpConstants.java b/briar-api/src/org/briarproject/api/plugins/LanTcpConstants.java new file mode 100644 index 0000000000..6ea2ceb514 --- /dev/null +++ b/briar-api/src/org/briarproject/api/plugins/LanTcpConstants.java @@ -0,0 +1,9 @@ +package org.briarproject.api.plugins; + +import org.briarproject.api.TransportId; + +public interface LanTcpConstants { + + TransportId ID = new TransportId("org.briarproject.bramble.lan"); + +} diff --git a/briar-api/src/org/briarproject/api/plugins/TorConstants.java b/briar-api/src/org/briarproject/api/plugins/TorConstants.java index f90e047bb0..27624c7a8d 100644 --- a/briar-api/src/org/briarproject/api/plugins/TorConstants.java +++ b/briar-api/src/org/briarproject/api/plugins/TorConstants.java @@ -4,7 +4,7 @@ import org.briarproject.api.TransportId; public interface TorConstants { - TransportId ID = new TransportId("tor"); + TransportId ID = new TransportId("org.briarproject.bramble.tor"); int SOCKS_PORT = 59050; int CONTROL_PORT = 59051; diff --git a/briar-api/src/org/briarproject/api/plugins/WanTcpConstants.java b/briar-api/src/org/briarproject/api/plugins/WanTcpConstants.java new file mode 100644 index 0000000000..cf8f649486 --- /dev/null +++ b/briar-api/src/org/briarproject/api/plugins/WanTcpConstants.java @@ -0,0 +1,9 @@ +package org.briarproject.api.plugins; + +import org.briarproject.api.TransportId; + +public interface WanTcpConstants { + + TransportId ID = new TransportId("org.briarproject.bramble.wan"); + +} diff --git a/briar-core/src/org/briarproject/keyagreement/PayloadParserImpl.java b/briar-core/src/org/briarproject/keyagreement/PayloadParserImpl.java index 1f9b656357..471e229fd7 100644 --- a/briar-core/src/org/briarproject/keyagreement/PayloadParserImpl.java +++ b/briar-core/src/org/briarproject/keyagreement/PayloadParserImpl.java @@ -9,6 +9,8 @@ import org.briarproject.api.keyagreement.Payload; import org.briarproject.api.keyagreement.PayloadParser; import org.briarproject.api.keyagreement.TransportDescriptor; import org.briarproject.api.nullsafety.NotNullByDefault; +import org.briarproject.api.plugins.BluetoothConstants; +import org.briarproject.api.plugins.TorConstants; import java.io.ByteArrayInputStream; import java.io.IOException; @@ -55,10 +57,10 @@ class PayloadParserImpl implements PayloadParser { BdfList descriptor = payload.getList(i); long transportId = descriptor.getLong(0); if (transportId == TRANSPORT_ID_BLUETOOTH) { - TransportId id = new TransportId("bt"); + TransportId id = BluetoothConstants.ID; recognised.add(new TransportDescriptor(id, descriptor)); } else if (transportId == TRANSPORT_ID_LAN) { - TransportId id = new TransportId("lan"); + TransportId id = TorConstants.ID; recognised.add(new TransportDescriptor(id, descriptor)); } } diff --git a/briar-core/src/org/briarproject/plugins/tcp/LanTcpPlugin.java b/briar-core/src/org/briarproject/plugins/tcp/LanTcpPlugin.java index e3527f74dd..f60a0a743c 100644 --- a/briar-core/src/org/briarproject/plugins/tcp/LanTcpPlugin.java +++ b/briar-core/src/org/briarproject/plugins/tcp/LanTcpPlugin.java @@ -33,14 +33,13 @@ import java.util.logging.Logger; import static java.util.logging.Level.INFO; import static java.util.logging.Level.WARNING; import static org.briarproject.api.keyagreement.KeyAgreementConstants.TRANSPORT_ID_LAN; +import static org.briarproject.api.plugins.LanTcpConstants.ID; import static org.briarproject.util.ByteUtils.MAX_16_BIT_UNSIGNED; import static org.briarproject.util.PrivacyUtils.scrubSocketAddress; @NotNullByDefault class LanTcpPlugin extends TcpPlugin { - static final TransportId ID = new TransportId("lan"); - private static final Logger LOG = Logger.getLogger(LanTcpPlugin.class.getName()); diff --git a/briar-core/src/org/briarproject/plugins/tcp/LanTcpPluginFactory.java b/briar-core/src/org/briarproject/plugins/tcp/LanTcpPluginFactory.java index 541b8ad5ff..2818666b0b 100644 --- a/briar-core/src/org/briarproject/plugins/tcp/LanTcpPluginFactory.java +++ b/briar-core/src/org/briarproject/plugins/tcp/LanTcpPluginFactory.java @@ -9,6 +9,8 @@ import org.briarproject.api.plugins.duplex.DuplexPluginFactory; import java.util.concurrent.Executor; +import static org.briarproject.api.plugins.LanTcpConstants.ID; + public class LanTcpPluginFactory implements DuplexPluginFactory { private static final int MAX_LATENCY = 30 * 1000; // 30 seconds @@ -28,7 +30,7 @@ public class LanTcpPluginFactory implements DuplexPluginFactory { @Override public TransportId getId() { - return LanTcpPlugin.ID; + return ID; } @Override diff --git a/briar-core/src/org/briarproject/plugins/tcp/WanTcpPlugin.java b/briar-core/src/org/briarproject/plugins/tcp/WanTcpPlugin.java index 3f297d1482..f51767af60 100644 --- a/briar-core/src/org/briarproject/plugins/tcp/WanTcpPlugin.java +++ b/briar-core/src/org/briarproject/plugins/tcp/WanTcpPlugin.java @@ -16,12 +16,12 @@ import java.util.LinkedList; import java.util.List; import java.util.concurrent.Executor; +import static org.briarproject.api.plugins.WanTcpConstants.ID; + @MethodsNotNullByDefault @ParametersNotNullByDefault class WanTcpPlugin extends TcpPlugin { - static final TransportId ID = new TransportId("wan"); - private static final String PROP_IP_PORT = "ipPort"; private final PortMapper portMapper; diff --git a/briar-core/src/org/briarproject/plugins/tcp/WanTcpPluginFactory.java b/briar-core/src/org/briarproject/plugins/tcp/WanTcpPluginFactory.java index b5e2823ca7..f1fd78bcf5 100644 --- a/briar-core/src/org/briarproject/plugins/tcp/WanTcpPluginFactory.java +++ b/briar-core/src/org/briarproject/plugins/tcp/WanTcpPluginFactory.java @@ -10,6 +10,8 @@ import org.briarproject.api.plugins.duplex.DuplexPluginFactory; import java.util.concurrent.Executor; +import static org.briarproject.api.plugins.WanTcpConstants.ID; + public class WanTcpPluginFactory implements DuplexPluginFactory { private static final int MAX_LATENCY = 30 * 1000; // 30 seconds @@ -31,7 +33,7 @@ public class WanTcpPluginFactory implements DuplexPluginFactory { @Override public TransportId getId() { - return WanTcpPlugin.ID; + return ID; } @Override diff --git a/briar-desktop/src/org/briarproject/plugins/bluetooth/BluetoothPlugin.java b/briar-desktop/src/org/briarproject/plugins/bluetooth/BluetoothPlugin.java index c945ca8154..81d5588abe 100644 --- a/briar-desktop/src/org/briarproject/plugins/bluetooth/BluetoothPlugin.java +++ b/briar-desktop/src/org/briarproject/plugins/bluetooth/BluetoothPlugin.java @@ -49,20 +49,17 @@ import static java.util.logging.Level.INFO; import static java.util.logging.Level.WARNING; import static javax.bluetooth.DiscoveryAgent.GIAC; import static org.briarproject.api.keyagreement.KeyAgreementConstants.TRANSPORT_ID_BLUETOOTH; +import static org.briarproject.api.plugins.BluetoothConstants.ID; +import static org.briarproject.api.plugins.BluetoothConstants.PROP_ADDRESS; +import static org.briarproject.api.plugins.BluetoothConstants.PROP_UUID; +import static org.briarproject.api.plugins.BluetoothConstants.UUID_BYTES; @MethodsNotNullByDefault @ParametersNotNullByDefault class BluetoothPlugin implements DuplexPlugin { - // Share an ID with the Android Bluetooth plugin - static final TransportId ID = new TransportId("bt"); - private static final Logger LOG = Logger.getLogger(BluetoothPlugin.class.getName()); - private static final int UUID_BYTES = 16; - - private static final String PROP_ADDRESS = "address"; - private static final String PROP_UUID = "uuid"; private final Executor ioExecutor; private final SecureRandom secureRandom; @@ -507,7 +504,7 @@ class BluetoothPlugin implements DuplexPlugin { private final StreamConnectionNotifier ss; - BluetoothKeyAgreementListener(BdfList descriptor, + private BluetoothKeyAgreementListener(BdfList descriptor, StreamConnectionNotifier ss) { super(descriptor); this.ss = ss; diff --git a/briar-desktop/src/org/briarproject/plugins/bluetooth/BluetoothPluginFactory.java b/briar-desktop/src/org/briarproject/plugins/bluetooth/BluetoothPluginFactory.java index 1fd6648b3b..fbe51e342f 100644 --- a/briar-desktop/src/org/briarproject/plugins/bluetooth/BluetoothPluginFactory.java +++ b/briar-desktop/src/org/briarproject/plugins/bluetooth/BluetoothPluginFactory.java @@ -10,6 +10,8 @@ import org.briarproject.api.plugins.duplex.DuplexPluginFactory; import java.security.SecureRandom; import java.util.concurrent.Executor; +import static org.briarproject.api.plugins.BluetoothConstants.ID; + public class BluetoothPluginFactory implements DuplexPluginFactory { private static final int MAX_LATENCY = 30 * 1000; // 30 seconds @@ -30,7 +32,7 @@ public class BluetoothPluginFactory implements DuplexPluginFactory { @Override public TransportId getId() { - return BluetoothPlugin.ID; + return ID; } @Override diff --git a/briar-desktop/src/org/briarproject/plugins/file/RemovableDrivePlugin.java b/briar-desktop/src/org/briarproject/plugins/file/RemovableDrivePlugin.java index 37728666d0..a5dba602e0 100644 --- a/briar-desktop/src/org/briarproject/plugins/file/RemovableDrivePlugin.java +++ b/briar-desktop/src/org/briarproject/plugins/file/RemovableDrivePlugin.java @@ -19,7 +19,8 @@ import static java.util.logging.Level.WARNING; class RemovableDrivePlugin extends FilePlugin implements RemovableDriveMonitor.Callback { - static final TransportId ID = new TransportId("file"); + static final TransportId ID = + new TransportId("org.briarproject.bramble.file"); private static final Logger LOG = Logger.getLogger(RemovableDrivePlugin.class.getName()); diff --git a/briar-desktop/src/org/briarproject/plugins/modem/ModemPlugin.java b/briar-desktop/src/org/briarproject/plugins/modem/ModemPlugin.java index fe3b89e2c3..ae08ea3973 100644 --- a/briar-desktop/src/org/briarproject/plugins/modem/ModemPlugin.java +++ b/briar-desktop/src/org/briarproject/plugins/modem/ModemPlugin.java @@ -28,7 +28,8 @@ import static java.util.logging.Level.WARNING; @ParametersNotNullByDefault class ModemPlugin implements DuplexPlugin, Modem.Callback { - static final TransportId ID = new TransportId("modem"); + static final TransportId ID = + new TransportId("org.briarproject.bramble.modem"); private static final Logger LOG = Logger.getLogger(ModemPlugin.class.getName()); -- GitLab