Compare commits

...

12 Commits

9 changed files with 84 additions and 43 deletions

View File

@ -1,3 +1,35 @@
1.8.2
* This update fixes a bug where Family Keys are incorrectly handled by the Android router, leading
to a crash.
* This update fixes a bug wherein incorrect type-checking caused a crash when using the Network
Config page for some users.
1.8.1
* This update fixes a bug where certificates were unpacked to the wrong location on new installs,
resulting in the router failing to start.
* Decouples the Android version from the I2P library version to allow for android point
releases with less pain.
1.8.0
* This release updates the underlying I2P libraries to I2P version 1.8.0
* The SAM API now operates in "Interactive Authentication" mode. Users will be prompted via
the notificationArea to approve or ignore new SAM connections initiated by external apps.
* The network config menu now features a drop-down configuration instead of a slider configuration
(since reversed)
1.7.1
* This release updates the underlying I2P libraries to I2P version 1.7.1
1.7.0
* This release updates the underlying I2P libraries to I2P version 1.7.0
* Refactor of the unzipResourceToDir function
1.6.0
* This release updates the underlying I2P libraries to I2P version 1.6.0
1.5.0
* This release updates the underlying I2P libraries to I2P version 1.5.0
0.9.50 2021-05-18
* This release updates the underlying I2P libraries to I2P version 0.9.50

View File

@ -18,6 +18,7 @@ the override.properties that is used in the Docker container.
## Prerequirements
0. Update the changelog!
1. Ensure you have the deprecated maven ant tasks. ( https://maven.apache.org/ant-tasks/download.cgi )
2. It should exist at `~/.ant/lib/maven-ant-tasks-2.1.3.jar`
3. Ensure you have hamcrest-integration, hamcrest-library, hamcrest-core in the hamcrest.home directory.

View File

@ -7,8 +7,8 @@ repositories {
android {
compileSdkVersion 28
defaultConfig {
versionCode 4745267
versionName "$I2P_VERSION"
versionCode 4745270
versionName "$I2P_ANDROID_VERSION"
minSdkVersion 14
targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION as String)

View File

@ -62,7 +62,6 @@ class InitActivities {
void initialize() {
Util.i("Initializing the I2P resources");
unzipResourceToDir(R.raw.certificates_zip, "certificates");
List<Properties> lProps = Util.getPropertiesFromPreferences(ctx);
Properties props = lProps.get(0);
@ -143,6 +142,7 @@ class InitActivities {
File netDBDir = new File(myDir, "netDB");
netDBDir.mkdir();
//unzipResourceToDir(R.raw.netdb_zip, "netDB");
unzipResourceToDir(R.raw.certificates_zip, "certificates");
// Set up the locations so settings can find them
System.setProperty("i2p.dir.base", myDir);
@ -227,6 +227,9 @@ class InitActivities {
f.mkdir();
} else {
Util.i("Creating file " + myDir + "/" + folder +"/" + name + " from resource");
//create all the leading directories
File newFile = new File(myDir+"/"+folder+"/"+name);
newFile.getParentFile().mkdirs();
byte[] bytes = baos.toByteArray();
out = new FileOutputStream(f);
out.write(bytes);

View File

@ -29,10 +29,12 @@ public class I2PDestinationPage extends SingleTextFieldPage {
public boolean isValid() {
String data = mData.getString(SIMPLE_DATA_KEY);
if (data.toLowerCase(Locale.US).endsWith(".b32.i2p")) { /* B32 */
if (data.length() != BASE32_HASH_LENGTH + 8) {
if (data.length() == BASE32_HASH_LENGTH + 8 || data.length() >= BASE32_HASH_LENGTH + 12) {
mFeedback = "";
return true;
}
mFeedback = "Invalid B32";
return false;
}
} else if (data.endsWith(".i2p")) { /* Domain */
// Valid
} else if (data.length() >= 516) { /* B64 */

View File

@ -184,7 +184,7 @@
<item>900 KB/s</item>
<item>1000 KB/s</item>
</string-array>
<string-array name="speed_values">
<integer-array name="speed_values">
<item>100</item>
<item>200</item>
<item>300</item>
@ -195,5 +195,5 @@
<item>800</item>
<item>900</item>
<item>1000</item>
</string-array>
</integer-array>
</resources>

View File

@ -294,7 +294,7 @@
<string name="i2ptunnel_wizard_desc_name">The name of the tunnel, for identification in the tunnel list.</string>
<string name="i2ptunnel_wizard_desc_desc">A description of the tunnel. This is optional and purely informative.</string>
<string name="i2ptunnel_wizard_desc_dest">Type in the I2P destination of the service that this client tunnel should connect to. This could be the full base 64 destination key, or an I2P host name from your address book.</string>
<string name="i2ptunnel_wizard_desc_dest">Specify the .i2p address or destination (hostname.i2p, b32 or b64) of the tunnel here.</string>
<string name="i2ptunnel_wizard_desc_outproxies">If you know of any outproxies for this type of tunnel (either HTTP or SOCKS), fill them in. Separate multiple proxies with commas.</string>
<string name="i2ptunnel_wizard_desc_target_host">This is the IP that your service is running on, this is usually on the same machine so 127.0.0.1 is autofilled.</string>
<string name="i2ptunnel_wizard_desc_target_port">This is the port that the service is accepting connections on.</string>

View File

@ -17,20 +17,22 @@
<!--
i2np.bandwidth.inboundKBytesPerSecond=100
-->
<DropDownPreference
<com.pavelsikun.seekbarpreference.SeekBarPreference
android:key="@string/PROP_INBOUND_BANDWIDTH"
android:title="@string/settings_desc_bw_inbound"
android:entries="@array/speed_increments"
android:entryValues="@array/speed_values"
app:msbp_defaultValue="100"
app:msbp_maxValue="1000"
app:msbp_measurementUnit="KB/s"
/>
<!--
i2np.bandwidth.outboundKBytesPerSecond=30
-->
<DropDownPreference
<com.pavelsikun.seekbarpreference.SeekBarPreference
android:key="@string/PROP_OUTBOUND_BANDWIDTH"
android:title="@string/settings_desc_bw_inbound"
android:entries="@array/speed_increments"
android:entryValues="@array/speed_values"
android:title="@string/settings_desc_bw_outbound"
app:msbp_defaultValue="100"
app:msbp_maxValue="1000"
app:msbp_measurementUnit="KB/s"
/>
</PreferenceCategory>

View File

@ -17,4 +17,5 @@ POM_DEVELOPER_EMAIL=hankhill19580@gmail.com
ANDROID_BUILD_TARGET_SDK_VERSION=30
ANDROID_BUILD_SDK_VERSION=28
I2P_VERSION=1.8.0-1
I2P_VERSION=1.9.0-1
I2P_ANDROID_VERSION=1.9.0