diff --git a/graalvm-config-dir/jni-config.json b/graalvm-config-dir/jni-config.json index 724387de..34613914 100644 --- a/graalvm-config-dir/jni-config.json +++ b/graalvm-config-dir/jni-config.json @@ -9,5 +9,48 @@ { "name":"java.lang.UnsatisfiedLinkError", "methods":[{"name":"","parameterTypes":["java.lang.String"] }] +}, +{ + "name":"org.asamk.signal.manager.storage.protocol.JsonSignalProtocolStore", + "methods":[ + {"name":"getIdentity","parameterTypes":["org.whispersystems.libsignal.SignalProtocolAddress"] }, + {"name":"getIdentityKeyPair","parameterTypes":[] }, + {"name":"isTrustedIdentity","parameterTypes":["org.whispersystems.libsignal.SignalProtocolAddress","org.whispersystems.libsignal.IdentityKey","org.whispersystems.libsignal.state.IdentityKeyStore$Direction"] }, + {"name":"loadSession","parameterTypes":["org.whispersystems.libsignal.SignalProtocolAddress"] }, + {"name":"saveIdentity","parameterTypes":["org.whispersystems.libsignal.SignalProtocolAddress","org.whispersystems.libsignal.IdentityKey"] }, + {"name":"storeSession","parameterTypes":["org.whispersystems.libsignal.SignalProtocolAddress","org.whispersystems.libsignal.state.SessionRecord"] } + ] +}, +{ + "name":"org.whispersystems.libsignal.IdentityKey", + "methods":[ + {"name":"","parameterTypes":["byte[]"] }, + {"name":"serialize","parameterTypes":[] } + ] +}, +{ + "name":"org.whispersystems.libsignal.IdentityKeyPair", + "methods":[{"name":"serialize","parameterTypes":[] }] +}, +{ + "name":"org.whispersystems.libsignal.SignalProtocolAddress", + "methods":[{"name":"","parameterTypes":["java.lang.String","int"] }] +}, +{ + "name":"org.whispersystems.libsignal.state.IdentityKeyStore" +}, +{ + "name":"org.whispersystems.libsignal.state.IdentityKeyStore$Direction", + "fields":[{"name":"SENDING"}] +}, +{ + "name":"org.whispersystems.libsignal.state.SessionRecord", + "methods":[ + {"name":"","parameterTypes":["byte[]"] }, + {"name":"nativeHandle","parameterTypes":[] } + ] +}, +{ + "name":"org.whispersystems.libsignal.state.SessionStore" } ] diff --git a/graalvm-config-dir/reflect-config.json b/graalvm-config-dir/reflect-config.json index ca62ca59..1f8b5aea 100644 --- a/graalvm-config-dir/reflect-config.json +++ b/graalvm-config-dir/reflect-config.json @@ -227,10 +227,6 @@ "name":"jnr.enxio.channels.Native$LibC", "allPublicMethods":true }, -{ - "name":"jnr.enxio.channels.Native$LibC$jnr$ffi$1", - "methods":[{"name":"","parameterTypes":["jnr.ffi.Runtime","jnr.ffi.provider.jffi.NativeLibrary","java.lang.Object[]"] }] -}, { "name":"jnr.ffi.Pointer", "allDeclaredMethods":true, @@ -284,10 +280,6 @@ "name":"jnr.unixsocket.Native$LibC", "allPublicMethods":true }, -{ - "name":"jnr.unixsocket.Native$LibC$jnr$ffi$0", - "methods":[{"name":"","parameterTypes":["jnr.ffi.Runtime","jnr.ffi.provider.jffi.NativeLibrary","java.lang.Object[]"] }] -}, { "name":"jnr.unixsocket.SockAddrUnix", "allPublicMethods":true @@ -876,60 +868,6 @@ { "name":"org.objectweb.asm.util.TraceMethodVisitor" }, -{ - "name":"org.signal.libsignal.metadata.SignalProtos$SenderCertificate", - "fields":[ - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"certificate_", "allowUnsafeAccess":true}, - {"name":"signature_", "allowUnsafeAccess":true} - ] -}, -{ - "name":"org.signal.libsignal.metadata.SignalProtos$SenderCertificate$Certificate", - "fields":[ - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"expires_", "allowUnsafeAccess":true}, - {"name":"identityKey_", "allowUnsafeAccess":true}, - {"name":"senderDevice_", "allowUnsafeAccess":true}, - {"name":"senderE164_", "allowUnsafeAccess":true}, - {"name":"senderUuid_", "allowUnsafeAccess":true}, - {"name":"signer_", "allowUnsafeAccess":true} - ] -}, -{ - "name":"org.signal.libsignal.metadata.SignalProtos$ServerCertificate", - "fields":[ - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"certificate_", "allowUnsafeAccess":true}, - {"name":"signature_", "allowUnsafeAccess":true} - ] -}, -{ - "name":"org.signal.libsignal.metadata.SignalProtos$ServerCertificate$Certificate", - "fields":[ - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"id_", "allowUnsafeAccess":true}, - {"name":"key_", "allowUnsafeAccess":true} - ] -}, -{ - "name":"org.signal.libsignal.metadata.SignalProtos$UnidentifiedSenderMessage", - "fields":[ - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"encryptedMessage_", "allowUnsafeAccess":true}, - {"name":"encryptedStatic_", "allowUnsafeAccess":true}, - {"name":"ephemeralPublic_", "allowUnsafeAccess":true} - ] -}, -{ - "name":"org.signal.libsignal.metadata.SignalProtos$UnidentifiedSenderMessage$Message", - "fields":[ - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"content_", "allowUnsafeAccess":true}, - {"name":"senderCertificate_", "allowUnsafeAccess":true}, - {"name":"type_", "allowUnsafeAccess":true} - ] -}, { "name":"org.signal.storageservice.protos.groups.AccessControl", "fields":[ @@ -1032,48 +970,6 @@ "name":"org.signal.storageservice.protos.groups.local.DecryptedTimer", "fields":[{"name":"duration_", "allowUnsafeAccess":true}] }, -{ - "name":"org.whispersystems.curve25519.OpportunisticCurve25519Provider", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"org.whispersystems.libsignal.fingerprint.FingerprintProtos$CombinedFingerprints", - "fields":[ - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"localFingerprint_", "allowUnsafeAccess":true}, - {"name":"remoteFingerprint_", "allowUnsafeAccess":true}, - {"name":"version_", "allowUnsafeAccess":true} - ] -}, -{ - "name":"org.whispersystems.libsignal.fingerprint.FingerprintProtos$LogicalFingerprint", - "fields":[ - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"content_", "allowUnsafeAccess":true} - ] -}, -{ - "name":"org.whispersystems.libsignal.protocol.SignalProtos$PreKeySignalMessage", - "fields":[ - {"name":"baseKey_", "allowUnsafeAccess":true}, - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"identityKey_", "allowUnsafeAccess":true}, - {"name":"message_", "allowUnsafeAccess":true}, - {"name":"preKeyId_", "allowUnsafeAccess":true}, - {"name":"registrationId_", "allowUnsafeAccess":true}, - {"name":"signedPreKeyId_", "allowUnsafeAccess":true} - ] -}, -{ - "name":"org.whispersystems.libsignal.protocol.SignalProtos$SignalMessage", - "fields":[ - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"ciphertext_", "allowUnsafeAccess":true}, - {"name":"counter_", "allowUnsafeAccess":true}, - {"name":"previousCounter_", "allowUnsafeAccess":true}, - {"name":"ratchetKey_", "allowUnsafeAccess":true} - ] -}, { "name":"org.whispersystems.libsignal.state.IdentityKeyStore", "allDeclaredMethods":true @@ -1094,98 +990,6 @@ "name":"org.whispersystems.libsignal.state.SignedPreKeyStore", "allDeclaredMethods":true }, -{ - "name":"org.whispersystems.libsignal.state.StorageProtos$IdentityKeyPairStructure", - "fields":[ - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"privateKey_", "allowUnsafeAccess":true}, - {"name":"publicKey_", "allowUnsafeAccess":true} - ] -}, -{ - "name":"org.whispersystems.libsignal.state.StorageProtos$PreKeyRecordStructure", - "fields":[ - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"id_", "allowUnsafeAccess":true}, - {"name":"privateKey_", "allowUnsafeAccess":true}, - {"name":"publicKey_", "allowUnsafeAccess":true} - ] -}, -{ - "name":"org.whispersystems.libsignal.state.StorageProtos$RecordStructure", - "fields":[ - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"currentSession_", "allowUnsafeAccess":true}, - {"name":"previousSessions_", "allowUnsafeAccess":true} - ] -}, -{ - "name":"org.whispersystems.libsignal.state.StorageProtos$SessionStructure", - "fields":[ - {"name":"aliceBaseKey_", "allowUnsafeAccess":true}, - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"localIdentityPublic_", "allowUnsafeAccess":true}, - {"name":"localRegistrationId_", "allowUnsafeAccess":true}, - {"name":"needsRefresh_", "allowUnsafeAccess":true}, - {"name":"pendingKeyExchange_", "allowUnsafeAccess":true}, - {"name":"pendingPreKey_", "allowUnsafeAccess":true}, - {"name":"previousCounter_", "allowUnsafeAccess":true}, - {"name":"receiverChains_", "allowUnsafeAccess":true}, - {"name":"remoteIdentityPublic_", "allowUnsafeAccess":true}, - {"name":"remoteRegistrationId_", "allowUnsafeAccess":true}, - {"name":"rootKey_", "allowUnsafeAccess":true}, - {"name":"senderChain_", "allowUnsafeAccess":true}, - {"name":"sessionVersion_", "allowUnsafeAccess":true} - ] -}, -{ - "name":"org.whispersystems.libsignal.state.StorageProtos$SessionStructure$Chain", - "fields":[ - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"chainKey_", "allowUnsafeAccess":true}, - {"name":"messageKeys_", "allowUnsafeAccess":true}, - {"name":"senderRatchetKeyPrivate_", "allowUnsafeAccess":true}, - {"name":"senderRatchetKey_", "allowUnsafeAccess":true} - ] -}, -{ - "name":"org.whispersystems.libsignal.state.StorageProtos$SessionStructure$Chain$ChainKey", - "fields":[ - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"index_", "allowUnsafeAccess":true}, - {"name":"key_", "allowUnsafeAccess":true} - ] -}, -{ - "name":"org.whispersystems.libsignal.state.StorageProtos$SessionStructure$Chain$MessageKey", - "fields":[ - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"cipherKey_", "allowUnsafeAccess":true}, - {"name":"index_", "allowUnsafeAccess":true}, - {"name":"iv_", "allowUnsafeAccess":true}, - {"name":"macKey_", "allowUnsafeAccess":true} - ] -}, -{ - "name":"org.whispersystems.libsignal.state.StorageProtos$SessionStructure$PendingPreKey", - "fields":[ - {"name":"baseKey_", "allowUnsafeAccess":true}, - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"preKeyId_", "allowUnsafeAccess":true}, - {"name":"signedPreKeyId_", "allowUnsafeAccess":true} - ] -}, -{ - "name":"org.whispersystems.libsignal.state.StorageProtos$SignedPreKeyRecordStructure", - "fields":[ - {"name":"bitField0_", "allowUnsafeAccess":true}, - {"name":"id_", "allowUnsafeAccess":true}, - {"name":"privateKey_", "allowUnsafeAccess":true}, - {"name":"publicKey_", "allowUnsafeAccess":true}, - {"name":"signature_", "allowUnsafeAccess":true}, - {"name":"timestamp_", "allowUnsafeAccess":true} - ] -}, { "name":"org.whispersystems.signalservice.api.account.AccountAttributes", "allDeclaredFields":true, @@ -1535,6 +1339,7 @@ {"name":"delete_", "allowUnsafeAccess":true}, {"name":"expireTimer_", "allowUnsafeAccess":true}, {"name":"flags_", "allowUnsafeAccess":true}, + {"name":"groupCallUpdate_", "allowUnsafeAccess":true}, {"name":"groupV2_", "allowUnsafeAccess":true}, {"name":"group_", "allowUnsafeAccess":true}, {"name":"isViewOnce_", "allowUnsafeAccess":true}, diff --git a/graalvm-config-dir/resource-config.json b/graalvm-config-dir/resource-config.json index 402798af..fcacac15 100644 --- a/graalvm-config-dir/resource-config.json +++ b/graalvm-config-dir/resource-config.json @@ -1,11 +1,12 @@ { "resources":{ "includes":[ - {"pattern":"com/google/i18n/phonenumbers/data/.*"}, - {"pattern":"libzkgroup.so"}, - {"pattern":"org/asamk/signal/manager/ias.store"}, - {"pattern":"org/asamk/signal/manager/whisper.store"}, - {"pattern":"org/slf4j/impl/StaticLoggerBinder.class"} + {"pattern":"com/google/i18n/phonenumbers/data/.*"}, + {"pattern":"\\Qlibsignal_jni.so\\E"}, + {"pattern":"\\Qlibzkgroup.so\\E"}, + {"pattern":"\\Qorg/asamk/signal/manager/config/ias.store\\E"}, + {"pattern":"\\Qorg/asamk/signal/manager/config/whisper.store\\E"}, + {"pattern":"\\Qorg/slf4j/impl/StaticLoggerBinder.class\\E"} ]}, "bundles":[{"name":"net.sourceforge.argparse4j.internal.ArgumentParserImpl"}] } diff --git a/graalvm-config-dir/serialization-config.json b/graalvm-config-dir/serialization-config.json new file mode 100644 index 00000000..0d4f101c --- /dev/null +++ b/graalvm-config-dir/serialization-config.json @@ -0,0 +1,2 @@ +[ +]