Compare commits

..

1 commit

Author SHA1 Message Date
7bfa3bc807 add kbs settings patch file 2022-12-20 12:45:54 -08:00
6 changed files with 113 additions and 53 deletions

View file

@ -2,7 +2,7 @@ stages:
- build - build
variables: variables:
version: "v2.15.3_unofficial_65" version: "v2.15.3_unofficial_50"
GRADLE_OPTS: -Dorg.gradle.daemon=false GRADLE_OPTS: -Dorg.gradle.daemon=false
build: build:
@ -14,7 +14,11 @@ build:
matrix: matrix:
- TARGET: - TARGET:
- aarch64-unknown-linux-gnu - aarch64-unknown-linux-gnu
- arm-unknown-linux-gnueabi
- arm-unknown-linux-gnueabihf
- armv7-unknown-linux-gnueabihf
- x86_64-unknown-linux-gnu - x86_64-unknown-linux-gnu
- x86_64-unknown-linux-musl
build darwin: build darwin:
stage: build stage: build

View file

@ -5,6 +5,7 @@ cd libsignal-service-java
git config user.email nobody@signald.org git config user.email nobody@signald.org
git config user.name signald git config user.name signald
git am ../libsignal-service-java.patch git am ../libsignal-service-java.patch
git am ../update-kbs-settings.patch
python3 ../update-verification-metadata.py python3 ../update-verification-metadata.py
git diff --color=always git diff --color=always
gradle assemble publish || (gradle --write-verification-metadata sha256 && git diff --color=always && exit 1) gradle assemble publish || (gradle --write-verification-metadata sha256 && git diff --color=always && exit 1)

View file

@ -1,18 +1,34 @@
{ {
"aarch64-unknown-linux-gnu": { "aarch64-unknown-linux-gnu": {
"jar": "aa41794bb3b08914c0045a005ac5e7d96b1108a7be188703797f843458db8508", "jar": "802529c1472f7e621cca496c918d7bfec08314572f10e168b0d20b15a5b8101a",
"module": "63f8abdd50b5a0e4720f2d7d64e72d9c8703c609beb5b6526ca2b3f557018771" "module": "48e315037d2d9af6c7cf7b811d9a81d81b1eff13cbb1837b7638a3803b68f303"
},
"arm-unknown-linux-gnueabi": {
"jar": "8ef66fe1ae28fe7b2918292824ef33a41a3432c3a981cfa55665106c89348327",
"module": "7c988dfb2fca57ff0aabd7bd88ebfa5658be8722adb0831a5140aed3d1529097"
},
"arm-unknown-linux-gnueabihf": {
"jar": "446a796b0a2a062c65d9d5cb75a3fd4aadc03ab321b52c39a5bfe1e6f9dc9891",
"module": "30e6a82cc6d2b01b57b758d8352c9d90926f31becfe6218c43d2614a309c9cbc"
},
"armv7-unknown-linux-gnueabihf": {
"jar": "3e896a52cf5816387094137403c112353de93f4b7591bcfc5965e89ef3777c5b",
"module": "39be083718c6b8afe94e2ccff63c918ea1255292881afbb60b12236cd4b70dc6"
}, },
"x86_64-unknown-linux-gnu": { "x86_64-unknown-linux-gnu": {
"jar": "6fd0b55d40139984be4326594f4b70c58f1ee550583d7e0f19ce0ac0cbb3dcc6", "jar": "b38295eb11df91939b872f49eb8b55b2faf7933da92202b95d82320f4cdcb644",
"module": "2dd250d5b18c715b96e60331c1735f728d1f93d12a294477fdd7172bdfdffae2" "module": "1b739335cde181864882481f5feca8fca3f7baa439f79c36ac596a781e6d4477"
}, },
"x86_64-apple-darwin": { "x86_64-apple-darwin": {
"jar": "5dcf9e2113254d345e0e280e95c3f10f8b089b8e1cc0aa09eb7b46071c75d299", "jar": "949a72b14d81389a30e330db3162f822a475d0f19087590f334639acdb01b4eb",
"module": "836187421e538558e61e7ec58aae23d1c3d00e96569782f1f2436af04ef9e1f4" "module": "7de5da969225585d36d68ba7a87c80d33886e36a04dea9d78ef8c2df9f6a3bf2"
}, },
"aarch64-apple-darwin": { "aarch64-apple-darwin": {
"jar": "199c99054a245eb6880175d1a06305a14e3c1735329bcd09d17536a3f7db1201", "jar": "e7f405b1c521054bbea8ec0ff87c54527f17e8c914079d7805c4def3589e8af1",
"module": "67a93d3ede5a7398a5dae2b69e0427d0c73cbad4910a1225fa93bb51e3a66c9b" "module": "3c153a7e01ae317280981e387d3fd002b7106ce65653be1b6e4216a4f4d9d314"
},
"x86_64-unknown-linux-musl": {
"jar": "9a46edb376089b6284cbc76c4e6bc21fa91f8ee7e3daf221d704243cfe0c16cf",
"module": "a35abf78dc674557ddc7da348d5eb2d015b4e843d5402df95922ba2780b36169"
} }
} }

View file

@ -1,25 +1,25 @@
From cf6beb24c0031b018f8f5dbbc3c1fee31e801f6f Mon Sep 17 00:00:00 2001 From c51057ae26118490176af0b2421f8fa62d926c00 Mon Sep 17 00:00:00 2001
From: signald <nobody@signald.org> From: signald <nobody@signald.org>
Date: Tue, 20 Dec 2022 03:03:01 -0800 Date: Thu, 16 Jun 2022 13:04:00 -0700
Subject: [PATCH] update build files and provide a way for the websocket to Subject: [PATCH] update build files and provide a way for the websocket
receive callback to indicate the message was not saved receive callback to indicate the message was not saved
--- ---
build.gradle | 15 ++------------- build.gradle | 17 +++--------------
dependencies.gradle | 3 +-- dependencies.gradle | 3 +--
gradle/verification-metadata.xml | 13 ++++++++----- gradle/verification-metadata.xml | 13 ++++++++-----
service/build.gradle | 19 +++++++++---------- service/build.gradle | 19 +++++++++----------
.../signalservice/api/NotSavedException.java | 4 ++++ .../signalservice/api/NotSavedException.java | 4 ++++
.../signalservice/api/SignalWebSocket.java | 13 ++++++++++--- .../signalservice/api/SignalWebSocket.java | 13 ++++++++++---
settings.gradle | 1 - settings.gradle | 1 -
7 files changed, 34 insertions(+), 34 deletions(-) 7 files changed, 35 insertions(+), 35 deletions(-)
create mode 100644 service/src/main/java/org/whispersystems/signalservice/api/NotSavedException.java create mode 100644 service/src/main/java/org/whispersystems/signalservice/api/NotSavedException.java
diff --git a/build.gradle b/build.gradle diff --git a/build.gradle b/build.gradle
index 88570c52..f574c667 100644 index 2498bfcb..81f7038d 100644
--- a/build.gradle --- a/build.gradle
+++ b/build.gradle +++ b/build.gradle
@@ -18,11 +18,8 @@ buildscript { @@ -9,11 +9,8 @@ buildscript {
} }
} }
@ -32,7 +32,7 @@ index 88570c52..f574c667 100644
def getRepositoryUsername() { def getRepositoryUsername() {
return hasProperty('whisperSonatypeUsername') ? whisperSonatypeUsername : "" return hasProperty('whisperSonatypeUsername') ? whisperSonatypeUsername : ""
@@ -32,18 +29,10 @@ def getRepositoryPassword() { @@ -23,18 +20,10 @@ def getRepositoryPassword() {
return hasProperty('whisperSonatypePassword') ? whisperSonatypePassword : "" return hasProperty('whisperSonatypePassword') ? whisperSonatypePassword : ""
} }
@ -46,18 +46,19 @@ index 88570c52..f574c667 100644
-} -}
subprojects { subprojects {
ext.lib_signal_service_version_number = "2.15.3_unofficial_65" - ext.lib_signal_service_version_number = "2.15.3_unofficial_50"
- ext.lib_signal_service_group_info = "com.github.turasa" - ext.lib_signal_service_group_info = "com.github.turasa"
+ ext.lib_signal_service_version_number = "2.15.3_unofficial_50_signald_2"
+ ext.lib_signal_service_group_info = "org.signald" + ext.lib_signal_service_group_info = "org.signald"
if (JavaVersion.current().isJava8Compatible()) { if (JavaVersion.current().isJava8Compatible()) {
allprojects { allprojects {
diff --git a/dependencies.gradle b/dependencies.gradle diff --git a/dependencies.gradle b/dependencies.gradle
index 18107b58..d6f67f8c 100644 index e4b9f8a8..20e0d2f2 100644
--- a/dependencies.gradle --- a/dependencies.gradle
+++ b/dependencies.gradle +++ b/dependencies.gradle
@@ -13,8 +13,7 @@ dependencyResolutionManagement { @@ -8,8 +8,7 @@ dependencyResolutionManagement {
alias('google-jsr305').to('com.google.code.findbugs:jsr305:3.0.2') alias('google-libphonenumber').to('com.googlecode.libphonenumber:libphonenumber:8.12.48')
// 1st Party // 1st Party
- alias('libsignal-client').to('org.signal', 'libsignal-client').versionRef('libsignal-client') - alias('libsignal-client').to('org.signal', 'libsignal-client').versionRef('libsignal-client')
@ -65,41 +66,41 @@ index 18107b58..d6f67f8c 100644
+ alias('libsignal-client').to('org.signald', 'libsignal-client-' + System.getenv("TARGET")).versionRef('libsignal-client') + alias('libsignal-client').to('org.signald', 'libsignal-client-' + System.getenv("TARGET")).versionRef('libsignal-client')
// Third Party // Third Party
alias('jackson-core').to('com.fasterxml.jackson.core:jackson-databind:2.14.1') alias('jackson-core').to('com.fasterxml.jackson.core:jackson-databind:2.13.0')
diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml
index 3ae6989c..1e428740 100644 index fc39d024..59fde59c 100644
--- a/gradle/verification-metadata.xml --- a/gradle/verification-metadata.xml
+++ b/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml
@@ -840,6 +840,9 @@ @@ -482,6 +482,9 @@
<artifact name="protoc-3.21.7-linux-x86_64.exe"> <artifact name="protoc-3.18.0-linux-x86_64.exe">
<sha256 value="9b83158ee8c60bbf735bf7df3f225b3961c1711887ce77b90341055d7035665e" origin="Generated by Gradle"/> <sha256 value="e977a0b300a3b0c7c0135a02b8a4d746081e1cd8946ea747e0247412535692fe" origin="Generated by Gradle"/>
</artifact> </artifact>
+ <artifact name="protoc-3.21.7-osx-x86_64.exe"> + <artifact name="protoc-3.18.0-osx-x86_64.exe">
+ <sha256 value="9a7b8ecffa82e7ce3de863c89da86427314508161fd0c586d68da999ddc0e1fc" origin="Generated by Gradle"/> + <sha256 value="956241e25cac149cf8d01d4f9125f2913b3bc471deea6856231367cdf4be71a4" origin="Generated by Gradle"/>
+ </artifact> + </artifact>
<artifact name="protoc-3.21.7.pom"> </component>
<sha256 value="385898c492ec183df04427b044947f2a6e1db6f000843aacd80af41aba157e20" origin="Generated by Gradle"/> <component group="com.google.testing.platform" name="core-proto" version="0.0.8-alpha04">
</artifact> <artifact name="core-proto-0.0.8-alpha04.jar">
@@ -2111,12 +2114,12 @@ @@ -1133,12 +1136,12 @@
<sha256 value="e85ceb3d3a77bd11345548dcbb081a846684477152e63e8404092a7d4f7a8dee" origin="Generated by Gradle"/> <sha256 value="95510c70f1bf0fd65ddc1f39fbf7a42d75d8a064dc3a2cbe52496fa2f2c535f0" origin="Generated by Gradle"/>
</artifact> </artifact>
</component> </component>
- <component group="org.signal" name="libsignal-client" version="0.21.1"> - <component group="org.signal" name="libsignal-client" version="0.17.0">
- <artifact name="libsignal-client-0.21.1.jar"> - <artifact name="libsignal-client-0.17.0.jar">
- <sha256 value="1d9add6391b019fb53f09a01d0ae05dc753a6edcf59b0183c64d9e2026b5c31b" origin="Generated by Gradle"/> - <sha256 value="3611dc9425d7ef85daedbafa49fa67f49e921bf89e36f601d0b79b1268315619" origin="Generated by Gradle"/>
+ <component group="org.signald" name="libsignal-client-{TARGET}" version="0.21.1"> + <component group="org.signald" name="libsignal-client-{TARGET}" version="0.17.0">
+ <artifact name="libsignal-client-{TARGET}-0.21.1.jar"> + <artifact name="libsignal-client-{TARGET}-0.17.0.jar">
+ <sha256 value="{TARGET_JAR_SHA256}" origin="Generated by Gradle"/> + <sha256 value="{TARGET_JAR_SHA256}" origin="Generated by Gradle"/>
</artifact> </artifact>
- <artifact name="libsignal-client-0.21.1.module"> - <artifact name="libsignal-client-0.17.0.module">
- <sha256 value="1c46f905f3ab79404080486a0d454159cdc08de1ea1ba2608b41c94bf3a0e739" origin="Generated by Gradle"/> - <sha256 value="cc6125c6e30421eb39a115576371a41f0adde7ea501e99d2c74192264e6fb1ab" origin="Generated by Gradle"/>
+ <artifact name="libsignal-client-{TARGET}-0.21.1.module"> + <artifact name="libsignal-client-{TARGET}-0.17.0.module">
+ <sha256 value="{TARGET_MODULE_SHA256}" origin="Generated by Gradle"/> + <sha256 value="{TARGET_MODULE_SHA256}" origin="Generated by Gradle"/>
</artifact> </artifact>
</component> </component>
<component group="org.slf4j" name="slf4j-api" version="1.7.30"> <component group="org.tensorflow" name="tensorflow-lite-metadata" version="0.1.0-rc2">
diff --git a/service/build.gradle b/service/build.gradle diff --git a/service/build.gradle b/service/build.gradle
index ec21f92e..49556776 100644 index ae4df43a..4b0240d8 100644
--- a/service/build.gradle --- a/service/build.gradle
+++ b/service/build.gradle +++ b/service/build.gradle
@@ -21,6 +21,7 @@ compileJava { @@ -21,6 +21,7 @@ compileJava {
@ -133,7 +134,7 @@ index ec21f92e..49556776 100644
+ value = System.getenv("CI_JOB_TOKEN") + value = System.getenv("CI_JOB_TOKEN")
+ } + }
+ authentication { + authentication {
+ header(HttpHeaderAuthentication) + header(HttpHeaderAuthentication)
} }
} }
} }
@ -154,10 +155,10 @@ index 00000000..05d77d1f
+public class NotSavedException extends Exception { +public class NotSavedException extends Exception {
+} +}
diff --git a/service/src/main/java/org/whispersystems/signalservice/api/SignalWebSocket.java b/service/src/main/java/org/whispersystems/signalservice/api/SignalWebSocket.java diff --git a/service/src/main/java/org/whispersystems/signalservice/api/SignalWebSocket.java b/service/src/main/java/org/whispersystems/signalservice/api/SignalWebSocket.java
index a113ac36..74867895 100644 index 5a98f3c4..dff24940 100644
--- a/service/src/main/java/org/whispersystems/signalservice/api/SignalWebSocket.java --- a/service/src/main/java/org/whispersystems/signalservice/api/SignalWebSocket.java
+++ b/service/src/main/java/org/whispersystems/signalservice/api/SignalWebSocket.java +++ b/service/src/main/java/org/whispersystems/signalservice/api/SignalWebSocket.java
@@ -242,6 +242,7 @@ public final class SignalWebSocket { @@ -243,6 +243,7 @@ public final class SignalWebSocket {
while (true) { while (true) {
WebSocketRequestMessage request = getWebSocket().readRequest(timeout); WebSocketRequestMessage request = getWebSocket().readRequest(timeout);
WebSocketResponseMessage response = createWebSocketResponse(request); WebSocketResponseMessage response = createWebSocketResponse(request);
@ -165,7 +166,7 @@ index a113ac36..74867895 100644
try { try {
if (isSignalServiceEnvelope(request)) { if (isSignalServiceEnvelope(request)) {
Optional<String> timestampHeader = findHeader(request); Optional<String> timestampHeader = findHeader(request);
@@ -257,13 +258,19 @@ public final class SignalWebSocket { @@ -258,13 +259,19 @@ public final class SignalWebSocket {
SignalServiceEnvelope envelope = new SignalServiceEnvelope(request.getBody().toByteArray(), timestamp); SignalServiceEnvelope envelope = new SignalServiceEnvelope(request.getBody().toByteArray(), timestamp);
@ -187,7 +188,7 @@ index a113ac36..74867895 100644
} }
} }
} }
@@ -314,6 +321,6 @@ public final class SignalWebSocket { @@ -315,6 +322,6 @@ public final class SignalWebSocket {
* received. * received.
*/ */
public interface MessageReceivedCallback { public interface MessageReceivedCallback {

View file

@ -3,15 +3,15 @@ import requests
import hashlib import hashlib
import json import json
VERSION = "0.21.1" VERSION = "0.17.0"
TARGETS = [ TARGETS = [
"aarch64-unknown-linux-gnu", "aarch64-unknown-linux-gnu",
# "arm-unknown-linux-gnueabi", "arm-unknown-linux-gnueabi",
# "arm-unknown-linux-gnueabihf", "arm-unknown-linux-gnueabihf",
# "armv7-unknown-linux-gnueabihf", "armv7-unknown-linux-gnueabihf",
"x86_64-unknown-linux-gnu", "x86_64-unknown-linux-gnu",
"x86_64-apple-darwin", "x86_64-apple-darwin",
# "x86_64-unknown-linux-musl", "x86_64-unknown-linux-musl",
"aarch64-apple-darwin" "aarch64-apple-darwin"
] ]

38
update-kbs-settings.patch Normal file
View file

@ -0,0 +1,38 @@
From d432b9234521947d7bb07434f69a30b407700f5c Mon Sep 17 00:00:00 2001
From: Greyson Parrelli <greyson@signal.org>
Date: Thu, 20 Oct 2022 13:12:27 -0400
Subject: [PATCH 2/2] [Signal-Android] Updated KBS settings.
9941ffe79c2508eb9b1f1fa78b47b84c465d1199
---
.../internal/contacts/crypto/RemoteAttestationCipher.java | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/service/src/main/java/org/whispersystems/signalservice/internal/contacts/crypto/RemoteAttestationCipher.java b/service/src/main/java/org/whispersystems/signalservice/internal/contacts/crypto/RemoteAttestationCipher.java
index 05073edf..32e86c70 100644
--- a/service/src/main/java/org/whispersystems/signalservice/internal/contacts/crypto/RemoteAttestationCipher.java
+++ b/service/src/main/java/org/whispersystems/signalservice/internal/contacts/crypto/RemoteAttestationCipher.java
@@ -24,6 +24,11 @@ import java.util.Set;
public final class RemoteAttestationCipher {
+ private static final Set<String> ALLOWED_ADVISORIES = new HashSet<String>() {{
+ add("INTEL-SA-00334");
+ add("INTEL-SA-00615");
+ }};
+
private RemoteAttestationCipher() {
}
@@ -100,7 +105,7 @@ public final class RemoteAttestationCipher {
if ("OK".equals(entity.getIsvEnclaveQuoteStatus())) {
return true;
} else if ("SW_HARDENING_NEEDED".equals(entity.getIsvEnclaveQuoteStatus())) {
- return entity.getAdvisoryIds().length == 1 && "INTEL-SA-00334".equals(entity.getAdvisoryIds()[0]);
+ return Arrays.stream(entity.getAdvisoryIds()).allMatch(ALLOWED_ADVISORIES::contains);
} else {
return false;
}
--
2.30.2