slidge-whatsapp 0.2.5__cp311-cp311-manylinux_2_36_aarch64.whl → 0.3.0__cp311-cp311-manylinux_2_36_aarch64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of slidge-whatsapp might be problematic. Click here for more details.
- slidge_whatsapp/config.py +3 -0
- slidge_whatsapp/contact.py +15 -3
- slidge_whatsapp/event.go +171 -70
- slidge_whatsapp/gateway.go +16 -68
- slidge_whatsapp/gateway.py +4 -5
- slidge_whatsapp/generated/_whatsapp.cpython-311-aarch64-linux-gnu.h +168 -151
- slidge_whatsapp/generated/_whatsapp.cpython-311-aarch64-linux-gnu.so +0 -0
- slidge_whatsapp/generated/build.py +142 -128
- slidge_whatsapp/generated/whatsapp.c +1689 -1417
- slidge_whatsapp/generated/whatsapp.go +1011 -900
- slidge_whatsapp/generated/whatsapp.py +1175 -1050
- slidge_whatsapp/generated/whatsapp_go.h +168 -151
- slidge_whatsapp/go.mod +21 -15
- slidge_whatsapp/go.sum +49 -31
- slidge_whatsapp/group.py +34 -30
- slidge_whatsapp/media/media.go +22 -12
- slidge_whatsapp/session.go +106 -82
- slidge_whatsapp/session.py +46 -14
- slidge_whatsapp/vendor/github.com/beeper/argo-go/LICENSE +9 -0
- slidge_whatsapp/vendor/github.com/beeper/argo-go/block/blockreader.go +329 -0
- slidge_whatsapp/vendor/github.com/beeper/argo-go/block/blockwriter.go +417 -0
- slidge_whatsapp/vendor/github.com/beeper/argo-go/codec/decoder.go +652 -0
- slidge_whatsapp/vendor/github.com/beeper/argo-go/codec/encoder.go +985 -0
- slidge_whatsapp/vendor/github.com/beeper/argo-go/header/header.go +135 -0
- slidge_whatsapp/vendor/github.com/beeper/argo-go/internal/util/util.go +133 -0
- slidge_whatsapp/vendor/github.com/beeper/argo-go/label/label.go +384 -0
- slidge_whatsapp/vendor/github.com/beeper/argo-go/label/wiremarkers.go +37 -0
- slidge_whatsapp/vendor/github.com/beeper/argo-go/pkg/bitset/bitset.go +197 -0
- slidge_whatsapp/vendor/github.com/beeper/argo-go/pkg/buf/buf.go +420 -0
- slidge_whatsapp/vendor/github.com/beeper/argo-go/pkg/varint/varint.go +246 -0
- slidge_whatsapp/vendor/github.com/beeper/argo-go/wire/wire.go +614 -0
- slidge_whatsapp/vendor/github.com/beeper/argo-go/wirecodec/decode.go +341 -0
- slidge_whatsapp/vendor/github.com/ebitengine/purego/dlfcn.go +4 -4
- slidge_whatsapp/vendor/github.com/ebitengine/purego/dlfcn_darwin.go +0 -5
- slidge_whatsapp/vendor/github.com/ebitengine/purego/internal/fakecgo/go_libinit.go +3 -0
- slidge_whatsapp/vendor/github.com/ebitengine/purego/internal/fakecgo/symbols.go +40 -20
- slidge_whatsapp/vendor/github.com/elliotchance/orderedmap/v3/LICENSE +21 -0
- slidge_whatsapp/vendor/github.com/elliotchance/orderedmap/v3/list.go +95 -0
- slidge_whatsapp/vendor/github.com/elliotchance/orderedmap/v3/orderedmap.go +187 -0
- slidge_whatsapp/vendor/github.com/gen2brain/go-fitz/fitz.go +1 -0
- slidge_whatsapp/vendor/github.com/gen2brain/go-fitz/fitz_cgo.go +3 -0
- slidge_whatsapp/vendor/github.com/gen2brain/go-fitz/fitz_nocgo.go +4 -5
- slidge_whatsapp/vendor/github.com/gen2brain/go-fitz/purego_darwin.go +11 -1
- slidge_whatsapp/vendor/github.com/gen2brain/go-fitz/purego_linux.go +10 -0
- slidge_whatsapp/vendor/github.com/gen2brain/go-fitz/purego_windows.go +12 -0
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/.gitignore +0 -2
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/CHANGELOG.md +44 -1
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/COPYRIGHT.txt +6 -1
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/README.md +14 -17
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/abi.go +1 -1
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/abi2.go +7 -0
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/assets/libffi/LICENSE +21 -0
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/assets/libffi/darwin_amd64/libffi.8.dylib +0 -0
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/assets/libffi/darwin_arm64/libffi.8.dylib +0 -0
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/assets/libffi/windows_amd64/libffi-8.dll +0 -0
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/cif.go +15 -0
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/cif_arm64.go +16 -0
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/embed.go +49 -0
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/embed_darwin_amd64.go +10 -0
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/embed_darwin_arm64.go +10 -0
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/embed_windows_amd64.go +10 -0
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/ffi.go +53 -15
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/fun.go +10 -2
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/init.go +22 -9
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/lib.go +1 -1
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/lib_unix.go +1 -1
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/lib_windows.go +1 -1
- slidge_whatsapp/vendor/github.com/mattn/go-sqlite3/README.md +4 -7
- slidge_whatsapp/vendor/github.com/mattn/go-sqlite3/callback.go +2 -1
- slidge_whatsapp/vendor/github.com/mattn/go-sqlite3/sqlite3-binding.c +11545 -6680
- slidge_whatsapp/vendor/github.com/mattn/go-sqlite3/sqlite3-binding.h +527 -273
- slidge_whatsapp/vendor/github.com/mattn/go-sqlite3/sqlite3.go +57 -23
- slidge_whatsapp/vendor/github.com/mattn/go-sqlite3/sqlite3_opt_unlock_notify.c +4 -0
- slidge_whatsapp/vendor/github.com/mattn/go-sqlite3/sqlite3_opt_unlock_notify.go +4 -0
- slidge_whatsapp/vendor/github.com/mattn/go-sqlite3/sqlite3_opt_userauth.go +13 -140
- slidge_whatsapp/vendor/github.com/mattn/go-sqlite3/sqlite3ext.h +4 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/.gitignore +4 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/LICENSE +202 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/README.md +4 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/goid.go +35 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/goid_gccgo.go +26 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/goid_go1.3.c +23 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/goid_go1.3.go +22 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/goid_go1.4.go +35 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/goid_go1.4.s +18 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/goid_go1.5.go +28 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/goid_go1.5.s +44 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/goid_slow.go +24 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/runtime_gccgo_go1.8.go +17 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/runtime_go1.23.go +38 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/runtime_go1.25.go +37 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/runtime_go1.5.go +57 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/runtime_go1.6.go +43 -0
- slidge_whatsapp/vendor/github.com/petermattis/goid/runtime_go1.9.go +37 -0
- slidge_whatsapp/vendor/github.com/rs/zerolog/CONTRIBUTING.md +43 -0
- slidge_whatsapp/vendor/github.com/rs/zerolog/README.md +31 -0
- slidge_whatsapp/vendor/github.com/rs/zerolog/console.go +20 -5
- slidge_whatsapp/vendor/github.com/rs/zerolog/log/log.go +131 -0
- slidge_whatsapp/vendor/github.com/rs/zerolog/log.go +1 -1
- slidge_whatsapp/vendor/github.com/rs/zerolog/sampler.go +4 -1
- slidge_whatsapp/vendor/github.com/rs/zerolog/writer.go +9 -0
- slidge_whatsapp/vendor/github.com/vektah/gqlparser/v2/LICENSE +19 -0
- slidge_whatsapp/vendor/github.com/vektah/gqlparser/v2/ast/argmap.go +37 -0
- slidge_whatsapp/vendor/github.com/vektah/gqlparser/v2/ast/collections.go +148 -0
- slidge_whatsapp/vendor/github.com/vektah/gqlparser/v2/ast/comment.go +31 -0
- slidge_whatsapp/vendor/github.com/vektah/gqlparser/v2/ast/decode.go +216 -0
- slidge_whatsapp/vendor/github.com/vektah/gqlparser/v2/ast/definition.go +110 -0
- slidge_whatsapp/vendor/github.com/vektah/gqlparser/v2/ast/directive.go +43 -0
- slidge_whatsapp/vendor/github.com/vektah/gqlparser/v2/ast/document.go +89 -0
- slidge_whatsapp/vendor/github.com/vektah/gqlparser/v2/ast/dumper.go +159 -0
- slidge_whatsapp/vendor/github.com/vektah/gqlparser/v2/ast/fragment.go +41 -0
- slidge_whatsapp/vendor/github.com/vektah/gqlparser/v2/ast/operation.go +32 -0
- slidge_whatsapp/vendor/github.com/vektah/gqlparser/v2/ast/path.go +72 -0
- slidge_whatsapp/vendor/github.com/vektah/gqlparser/v2/ast/selection.go +41 -0
- slidge_whatsapp/vendor/github.com/vektah/gqlparser/v2/ast/source.go +19 -0
- slidge_whatsapp/vendor/github.com/vektah/gqlparser/v2/ast/type.go +68 -0
- slidge_whatsapp/vendor/github.com/vektah/gqlparser/v2/ast/value.go +122 -0
- slidge_whatsapp/vendor/go.mau.fi/libsignal/groups/GroupCipher.go +17 -6
- slidge_whatsapp/vendor/go.mau.fi/libsignal/groups/GroupSessionBuilder.go +17 -7
- slidge_whatsapp/vendor/go.mau.fi/libsignal/groups/state/store/SenderKeyStore.go +4 -2
- slidge_whatsapp/vendor/go.mau.fi/libsignal/keys/chain/ChainKey.go +1 -0
- slidge_whatsapp/vendor/go.mau.fi/libsignal/keys/identity/IdentityKey.go +1 -0
- slidge_whatsapp/vendor/go.mau.fi/libsignal/logger/DefaultLogger.go +2 -2
- slidge_whatsapp/vendor/go.mau.fi/libsignal/serialize/FingerprintProtocol.pb.go +3 -2
- slidge_whatsapp/vendor/go.mau.fi/libsignal/serialize/LocalStorageProtocol.pb.go +3 -2
- slidge_whatsapp/vendor/go.mau.fi/libsignal/serialize/WhisperTextProtocol.pb.go +3 -2
- slidge_whatsapp/vendor/go.mau.fi/libsignal/session/Session.go +41 -17
- slidge_whatsapp/vendor/go.mau.fi/libsignal/session/SessionCipher.go +64 -30
- slidge_whatsapp/vendor/go.mau.fi/libsignal/state/store/IdentityKeyStore.go +5 -3
- slidge_whatsapp/vendor/go.mau.fi/libsignal/state/store/MessageKeyStore.go +6 -4
- slidge_whatsapp/vendor/go.mau.fi/libsignal/state/store/PreKeyStore.go +6 -4
- slidge_whatsapp/vendor/go.mau.fi/libsignal/state/store/SessionStore.go +8 -6
- slidge_whatsapp/vendor/go.mau.fi/libsignal/state/store/SignedPreKeyStore.go +7 -5
- slidge_whatsapp/vendor/go.mau.fi/util/dbutil/connlog.go +257 -0
- slidge_whatsapp/vendor/go.mau.fi/util/dbutil/database.go +309 -0
- slidge_whatsapp/vendor/go.mau.fi/util/dbutil/iter.go +233 -0
- slidge_whatsapp/vendor/go.mau.fi/util/dbutil/json.go +47 -0
- slidge_whatsapp/vendor/go.mau.fi/util/dbutil/log.go +129 -0
- slidge_whatsapp/vendor/go.mau.fi/util/dbutil/massinsert.go +164 -0
- slidge_whatsapp/vendor/go.mau.fi/util/dbutil/queryhelper.go +137 -0
- slidge_whatsapp/vendor/go.mau.fi/util/dbutil/reflectscan.go +30 -0
- slidge_whatsapp/vendor/go.mau.fi/util/dbutil/transaction.go +180 -0
- slidge_whatsapp/vendor/go.mau.fi/util/dbutil/upgrades.go +250 -0
- slidge_whatsapp/vendor/go.mau.fi/util/dbutil/upgradetable.go +331 -0
- slidge_whatsapp/vendor/go.mau.fi/util/exerrors/dualerror.go +33 -0
- slidge_whatsapp/vendor/go.mau.fi/util/exerrors/must.go +23 -0
- slidge_whatsapp/vendor/go.mau.fi/util/exhttp/cors.go +32 -0
- slidge_whatsapp/vendor/go.mau.fi/util/exhttp/handleerrors.go +98 -0
- slidge_whatsapp/vendor/go.mau.fi/util/exhttp/json.go +36 -0
- slidge_whatsapp/vendor/go.mau.fi/util/exhttp/middleware.go +30 -0
- slidge_whatsapp/vendor/go.mau.fi/util/exhttp/networkerror.go +38 -0
- slidge_whatsapp/vendor/go.mau.fi/util/exstrings/stringutil.go +104 -0
- slidge_whatsapp/vendor/go.mau.fi/util/exsync/event.go +104 -0
- slidge_whatsapp/vendor/go.mau.fi/util/exsync/returnonce.go +25 -0
- slidge_whatsapp/vendor/go.mau.fi/util/exsync/ringbuffer.go +139 -0
- slidge_whatsapp/vendor/go.mau.fi/util/exsync/syncmap.go +94 -0
- slidge_whatsapp/vendor/go.mau.fi/util/exsync/syncset.go +136 -0
- slidge_whatsapp/vendor/go.mau.fi/util/exzerolog/callermarshal.go +28 -0
- slidge_whatsapp/vendor/go.mau.fi/util/exzerolog/defaults.go +32 -0
- slidge_whatsapp/vendor/go.mau.fi/util/exzerolog/generics.go +45 -0
- slidge_whatsapp/vendor/go.mau.fi/util/exzerolog/writer.go +81 -0
- slidge_whatsapp/vendor/go.mau.fi/util/ptr/ptr.go +43 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/.pre-commit-config.yaml +3 -3
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/appstate/decode.go +27 -26
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/appstate/encode.go +4 -3
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/appstate/hash.go +1 -1
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/appstate/keys.go +5 -4
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/appstate.go +32 -26
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/argo/argo-wire-type-store.argo +63 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/argo/argo.go +62 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/argo/name-to-queryids.json +306 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/armadillomessage.go +42 -8
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/binary/encoder.go +1 -1
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/broadcast.go +5 -4
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/call.go +2 -1
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/client.go +134 -55
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/connectionevents.go +34 -11
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/download-to-file.go +63 -30
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/download.go +78 -34
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/errors.go +4 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/group.go +157 -55
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/internals.go +202 -154
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/keepalive.go +3 -2
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/mediaconn.go +5 -3
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/mediaretry.go +2 -1
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/message.go +448 -138
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/msgsecret.go +106 -31
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/newsletter.go +83 -7
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/notification.go +83 -43
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/pair-code.go +9 -6
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/pair.go +42 -18
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/prekeys.go +9 -5
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/presence.go +17 -7
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/privacysettings.go +10 -11
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/extra.go +7 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloAddMessage/InstamadilloAddMessage.pb.go +983 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloAddMessage/InstamadilloAddMessage.proto +85 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloAddMessage/extra.go +3 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeActionLog/InstamadilloCoreTypeActionLog.pb.go +197 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeActionLog/InstamadilloCoreTypeActionLog.proto +13 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeAdminMessage/InstamadilloCoreTypeAdminMessage.pb.go +279 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeAdminMessage/InstamadilloCoreTypeAdminMessage.proto +21 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeCollection/InstamadilloCoreTypeCollection.pb.go +137 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeCollection/InstamadilloCoreTypeCollection.proto +10 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeLink/InstamadilloCoreTypeLink.pb.go +313 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeLink/InstamadilloCoreTypeLink.proto +27 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeMedia/InstamadilloCoreTypeMedia.pb.go +1299 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeMedia/InstamadilloCoreTypeMedia.proto +112 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeText/InstamadilloCoreTypeText.pb.go +514 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeText/InstamadilloCoreTypeText.proto +47 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloDeleteMessage/InstamadilloDeleteMessage.pb.go +123 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloDeleteMessage/InstamadilloDeleteMessage.proto +7 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloDeleteMessage/extra.go +3 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloSupplementMessage/InstamadilloSupplementMessage.pb.go +720 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloSupplementMessage/InstamadilloSupplementMessage.proto +59 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloSupplementMessage/extra.go +3 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloTransportPayload/InstamadilloTransportPayload.pb.go +365 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloTransportPayload/InstamadilloTransportPayload.proto +33 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloXmaContentRef/InstamadilloXmaContentRef.pb.go +1238 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloXmaContentRef/InstamadilloXmaContentRef.proto +105 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waAdv/WAAdv.pb.go +39 -9
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloApplication/WAArmadilloApplication.pb.go +354 -175
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloApplication/WAArmadilloApplication.proto +5 -5
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloXMA/WAArmadilloXMA.pb.go +170 -15
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloXMA/WAArmadilloXMA.proto +4 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waBotMetadata/WABotMetadata.pb.go +5156 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waBotMetadata/WABotMetadata.proto +516 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCert/WACert.pb.go +29 -9
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAProtobufsChatLockSettings.pb.go +13 -9
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCommon/WACommon.pb.go +344 -31
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCommon/WACommon.proto +26 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCompanionReg/{WAWebProtobufsCompanionReg.pb.go → WACompanionReg.pb.go} +211 -89
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCompanionReg/{WAWebProtobufsCompanionReg.proto → WACompanionReg.proto} +5 -1
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waConsumerApplication/WAConsumerApplication.pb.go +173 -9
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAProtobufsDeviceCapabilities.pb.go +78 -16
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAProtobufsDeviceCapabilities.proto +5 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waE2E/WAWebProtobufsE2E.pb.go +7463 -5180
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waE2E/WAWebProtobufsE2E.proto +366 -343
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/WAWebProtobufsHistorySync.pb.go +485 -135
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/WAWebProtobufsHistorySync.proto +17 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waLidMigrationSyncPayload/WAWebProtobufLidMigrationSyncPayload.pb.go +198 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waLidMigrationSyncPayload/WAWebProtobufLidMigrationSyncPayload.proto +14 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMediaTransport/WAMediaTransport.pb.go +162 -9
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMediaTransport/WAMediaTransport.proto +1 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMmsRetry/WAMmsRetry.pb.go +32 -9
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMmsRetry/WAMmsRetry.proto +1 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMsgApplication/WAMsgApplication.pb.go +192 -52
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMsgApplication/WAMsgApplication.proto +8 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMsgTransport/WAMsgTransport.pb.go +60 -9
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMsgTransport/extra.go +7 -6
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMultiDevice/WAMultiDevice.pb.go +39 -9
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waServerSync/WAServerSync.pb.go +61 -9
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waStatusAttributions/WAStatusAttributions.pb.go +952 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waStatusAttributions/WAStatusAttributions.proto +88 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WASyncAction.pb.go +1802 -453
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WASyncAction.proto +92 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAProtobufsUserPassword.pb.go +27 -9
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waVnameCert/WAWebProtobufsVnameCert.pb.go +59 -9
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWa6/WAWebProtobufsWa6.pb.go +435 -109
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWa6/WAWebProtobufsWa6.proto +11 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWeb/WAWebProtobufsWeb.pb.go +563 -9
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWeb/WAWebProtobufsWeb.proto +4 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/receipt.go +32 -9
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/reportingfields.json +1 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/reportingtoken.go +176 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/retry.go +39 -21
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/send.go +267 -79
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/sendfb.go +28 -16
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/clientpayload.go +3 -1
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/noop.go +87 -44
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/signal.go +75 -88
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/container.go +86 -65
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/lidmap.go +186 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/store.go +314 -170
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/00-latest-schema.sql +155 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/03-message-secrets.sql +11 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/04-privacy-tokens.sql +8 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/05-account-jid-format.sql +2 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/06-facebook-uuid.sql +2 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/07-account-lid.sql +2 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/08-lid-mapping.sql +5 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/09-decryption-buffer.sql +10 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/10-chat-db-lid-migration-ts.sql +2 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/upgrades.go +22 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/store.go +109 -56
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/types/botmap.go +210 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/types/call.go +1 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/types/events/events.go +21 -2
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/types/group.go +15 -6
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/types/jid.go +9 -9
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/types/message.go +18 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/types/user.go +2 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/update.go +3 -2
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/upload.go +1 -1
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/user.go +59 -37
- slidge_whatsapp/vendor/golang.org/x/crypto/curve25519/curve25519.go +1 -1
- slidge_whatsapp/vendor/golang.org/x/exp/LICENSE +27 -0
- slidge_whatsapp/vendor/golang.org/x/exp/PATENTS +22 -0
- slidge_whatsapp/vendor/golang.org/x/exp/constraints/constraints.go +54 -0
- slidge_whatsapp/vendor/golang.org/x/net/http/httpguts/guts.go +50 -0
- slidge_whatsapp/vendor/golang.org/x/net/http/httpguts/httplex.go +347 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/.gitignore +2 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/ascii.go +53 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/ciphers.go +641 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/client_conn_pool.go +311 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/config.go +164 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/databuffer.go +149 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/errors.go +145 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/flow.go +120 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/frame.go +1702 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/gotrack.go +181 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/hpack/encode.go +245 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/hpack/hpack.go +523 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/hpack/huffman.go +226 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/hpack/static_table.go +188 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/hpack/tables.go +403 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/http2.go +410 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/pipe.go +184 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/server.go +3332 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/transport.go +3233 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/unencrypted.go +32 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/write.go +381 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/writesched.go +251 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/writesched_priority.go +451 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/writesched_random.go +77 -0
- slidge_whatsapp/vendor/golang.org/x/net/http2/writesched_roundrobin.go +119 -0
- slidge_whatsapp/vendor/golang.org/x/net/idna/go118.go +13 -0
- slidge_whatsapp/vendor/golang.org/x/net/idna/idna10.0.0.go +769 -0
- slidge_whatsapp/vendor/golang.org/x/net/idna/idna9.0.0.go +717 -0
- slidge_whatsapp/vendor/golang.org/x/net/idna/pre_go118.go +11 -0
- slidge_whatsapp/vendor/golang.org/x/net/idna/punycode.go +217 -0
- slidge_whatsapp/vendor/golang.org/x/net/idna/tables10.0.0.go +4559 -0
- slidge_whatsapp/vendor/golang.org/x/net/idna/tables11.0.0.go +4653 -0
- slidge_whatsapp/vendor/golang.org/x/net/idna/tables12.0.0.go +4733 -0
- slidge_whatsapp/vendor/golang.org/x/net/idna/tables13.0.0.go +4959 -0
- slidge_whatsapp/vendor/golang.org/x/net/idna/tables15.0.0.go +5144 -0
- slidge_whatsapp/vendor/golang.org/x/net/idna/tables9.0.0.go +4486 -0
- slidge_whatsapp/vendor/golang.org/x/net/idna/trie.go +51 -0
- slidge_whatsapp/vendor/golang.org/x/net/idna/trie12.0.0.go +30 -0
- slidge_whatsapp/vendor/golang.org/x/net/idna/trie13.0.0.go +30 -0
- slidge_whatsapp/vendor/golang.org/x/net/idna/trieval.go +119 -0
- slidge_whatsapp/vendor/golang.org/x/net/internal/httpcommon/ascii.go +53 -0
- slidge_whatsapp/vendor/golang.org/x/net/internal/httpcommon/headermap.go +115 -0
- slidge_whatsapp/vendor/golang.org/x/net/internal/httpcommon/request.go +467 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/affinity_linux.go +1 -3
- slidge_whatsapp/vendor/golang.org/x/sys/unix/mkerrors.sh +3 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/syscall_darwin.go +93 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/syscall_linux.go +16 -26
- slidge_whatsapp/vendor/golang.org/x/sys/unix/syscall_solaris.go +1 -1
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zerrors_linux.go +47 -16
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zerrors_linux_386.go +3 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go +3 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go +3 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go +3 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zerrors_linux_loong64.go +3 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go +3 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go +3 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go +3 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go +3 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go +3 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go +3 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go +3 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go +3 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go +3 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go +3 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go +84 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s +20 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go +84 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s +20 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go +4 -4
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go +1 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go +1 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go +1 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go +1 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go +1 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go +1 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go +1 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go +1 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go +1 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go +1 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go +1 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go +1 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go +1 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go +1 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go +1 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/ztypes_linux.go +168 -12
- slidge_whatsapp/vendor/golang.org/x/sys/unix/ztypes_linux_386.go +17 -1
- slidge_whatsapp/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go +16 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go +18 -2
- slidge_whatsapp/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go +16 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/ztypes_linux_loong64.go +16 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go +17 -1
- slidge_whatsapp/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go +16 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go +16 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go +17 -1
- slidge_whatsapp/vendor/golang.org/x/sys/unix/ztypes_linux_ppc.go +18 -2
- slidge_whatsapp/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go +16 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go +16 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go +16 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go +16 -0
- slidge_whatsapp/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go +16 -0
- slidge_whatsapp/vendor/golang.org/x/sys/windows/security_windows.go +44 -5
- slidge_whatsapp/vendor/golang.org/x/sys/windows/syscall_windows.go +4 -2
- slidge_whatsapp/vendor/golang.org/x/sys/windows/types_windows.go +245 -0
- slidge_whatsapp/vendor/golang.org/x/sys/windows/zsyscall_windows.go +491 -482
- slidge_whatsapp/vendor/golang.org/x/text/LICENSE +27 -0
- slidge_whatsapp/vendor/golang.org/x/text/PATENTS +22 -0
- slidge_whatsapp/vendor/golang.org/x/text/secure/bidirule/bidirule.go +336 -0
- slidge_whatsapp/vendor/golang.org/x/text/secure/bidirule/bidirule10.0.0.go +11 -0
- slidge_whatsapp/vendor/golang.org/x/text/secure/bidirule/bidirule9.0.0.go +14 -0
- slidge_whatsapp/vendor/golang.org/x/text/transform/transform.go +709 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/bidi.go +359 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/bracket.go +335 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/core.go +1071 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/prop.go +206 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables10.0.0.go +1815 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables11.0.0.go +1887 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables12.0.0.go +1923 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables13.0.0.go +1955 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables15.0.0.go +2042 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables9.0.0.go +1781 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/trieval.go +48 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/composition.go +512 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/forminfo.go +279 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/input.go +109 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/iter.go +458 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/normalize.go +610 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/readwriter.go +125 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables10.0.0.go +7657 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables11.0.0.go +7693 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables12.0.0.go +7710 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables13.0.0.go +7760 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables15.0.0.go +7907 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables9.0.0.go +7637 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/transform.go +88 -0
- slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/trie.go +54 -0
- slidge_whatsapp/vendor/google.golang.org/protobuf/encoding/protowire/wire.go +25 -1
- slidge_whatsapp/vendor/google.golang.org/protobuf/internal/editiondefaults/editions_defaults.binpb +0 -0
- slidge_whatsapp/vendor/google.golang.org/protobuf/internal/filedesc/editions.go +13 -5
- slidge_whatsapp/vendor/google.golang.org/protobuf/internal/filedesc/presence.go +33 -0
- slidge_whatsapp/vendor/google.golang.org/protobuf/internal/genid/api_gen.go +6 -0
- slidge_whatsapp/vendor/google.golang.org/protobuf/internal/genid/descriptor_gen.go +81 -19
- slidge_whatsapp/vendor/google.golang.org/protobuf/internal/impl/codec_message_opaque.go +2 -1
- slidge_whatsapp/vendor/google.golang.org/protobuf/internal/impl/message_opaque.go +8 -37
- slidge_whatsapp/vendor/google.golang.org/protobuf/internal/impl/presence.go +0 -3
- slidge_whatsapp/vendor/google.golang.org/protobuf/internal/strs/{strings_unsafe_go121.go → strings_unsafe.go} +0 -2
- slidge_whatsapp/vendor/google.golang.org/protobuf/internal/version/version.go +1 -1
- slidge_whatsapp/vendor/google.golang.org/protobuf/proto/merge.go +6 -0
- slidge_whatsapp/vendor/google.golang.org/protobuf/reflect/protoreflect/source_gen.go +10 -0
- slidge_whatsapp/vendor/google.golang.org/protobuf/reflect/protoreflect/{value_unsafe_go121.go → value_unsafe.go} +0 -2
- slidge_whatsapp/vendor/modules.txt +80 -21
- {slidge_whatsapp-0.2.5.dist-info → slidge_whatsapp-0.3.0.dist-info}/METADATA +5 -4
- {slidge_whatsapp-0.2.5.dist-info → slidge_whatsapp-0.3.0.dist-info}/RECORD +456 -263
- {slidge_whatsapp-0.2.5.dist-info → slidge_whatsapp-0.3.0.dist-info}/WHEEL +1 -1
- slidge_whatsapp/vendor/github.com/jupiterrider/ffi/abi_amd64.go +0 -7
- slidge_whatsapp/vendor/github.com/rs/zerolog/CNAME +0 -1
- slidge_whatsapp/vendor/github.com/rs/zerolog/_config.yml +0 -1
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waAdv/WAAdv.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloApplication/WAArmadilloApplication.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloXMA/WAArmadilloXMA.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCert/WACert.pb.raw +0 -23
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAProtobufsChatLockSettings.pb.raw +0 -7
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCommon/WACommon.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCompanionReg/WAWebProtobufsCompanionReg.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waConsumerApplication/WAConsumerApplication.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAProtobufsDeviceCapabilities.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waE2E/WAWebProtobufsE2E.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/WAWebProtobufsHistorySync.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMediaTransport/WAMediaTransport.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMmsRetry/WAMmsRetry.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMsgApplication/WAMsgApplication.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMsgTransport/WAMsgTransport.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMultiDevice/WAMultiDevice.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waServerSync/WAServerSync.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WASyncAction.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAProtobufsUserPassword.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waVnameCert/WAWebProtobufsVnameCert.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWa6/WAWebProtobufsWa6.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWeb/WAWebProtobufsWeb.pb.raw +0 -0
- slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrade.go +0 -296
- slidge_whatsapp/vendor/google.golang.org/protobuf/internal/strs/strings_unsafe_go120.go +0 -94
- slidge_whatsapp/vendor/google.golang.org/protobuf/reflect/protoreflect/value_unsafe_go120.go +0 -98
- {slidge_whatsapp-0.2.5.dist-info → slidge_whatsapp-0.3.0.dist-info}/entry_points.txt +0 -0
- {slidge_whatsapp-0.2.5.dist-info → slidge_whatsapp-0.3.0.dist-info/licenses}/LICENSE +0 -0
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
package ast
|
|
2
|
+
|
|
3
|
+
import (
|
|
4
|
+
"fmt"
|
|
5
|
+
"strconv"
|
|
6
|
+
"strings"
|
|
7
|
+
)
|
|
8
|
+
|
|
9
|
+
type ValueKind int
|
|
10
|
+
|
|
11
|
+
const (
|
|
12
|
+
Variable ValueKind = iota
|
|
13
|
+
IntValue
|
|
14
|
+
FloatValue
|
|
15
|
+
StringValue
|
|
16
|
+
BlockValue
|
|
17
|
+
BooleanValue
|
|
18
|
+
NullValue
|
|
19
|
+
EnumValue
|
|
20
|
+
ListValue
|
|
21
|
+
ObjectValue
|
|
22
|
+
)
|
|
23
|
+
|
|
24
|
+
type Value struct {
|
|
25
|
+
Raw string
|
|
26
|
+
Children ChildValueList
|
|
27
|
+
Kind ValueKind
|
|
28
|
+
Position *Position `dump:"-" json:"-"`
|
|
29
|
+
Comment *CommentGroup
|
|
30
|
+
|
|
31
|
+
// Require validation
|
|
32
|
+
Definition *Definition
|
|
33
|
+
VariableDefinition *VariableDefinition
|
|
34
|
+
ExpectedType *Type
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
type ChildValue struct {
|
|
38
|
+
Name string
|
|
39
|
+
Value *Value
|
|
40
|
+
Position *Position `dump:"-" json:"-"`
|
|
41
|
+
Comment *CommentGroup
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
func (v *Value) Value(vars map[string]interface{}) (interface{}, error) {
|
|
45
|
+
if v == nil {
|
|
46
|
+
return nil, nil
|
|
47
|
+
}
|
|
48
|
+
switch v.Kind {
|
|
49
|
+
case Variable:
|
|
50
|
+
if value, ok := vars[v.Raw]; ok {
|
|
51
|
+
return value, nil
|
|
52
|
+
}
|
|
53
|
+
if v.VariableDefinition != nil && v.VariableDefinition.DefaultValue != nil {
|
|
54
|
+
return v.VariableDefinition.DefaultValue.Value(vars)
|
|
55
|
+
}
|
|
56
|
+
return nil, nil
|
|
57
|
+
case IntValue:
|
|
58
|
+
return strconv.ParseInt(v.Raw, 10, 64)
|
|
59
|
+
case FloatValue:
|
|
60
|
+
return strconv.ParseFloat(v.Raw, 64)
|
|
61
|
+
case StringValue, BlockValue, EnumValue:
|
|
62
|
+
return v.Raw, nil
|
|
63
|
+
case BooleanValue:
|
|
64
|
+
return strconv.ParseBool(v.Raw)
|
|
65
|
+
case NullValue:
|
|
66
|
+
return nil, nil
|
|
67
|
+
case ListValue:
|
|
68
|
+
var val []interface{}
|
|
69
|
+
for _, elem := range v.Children {
|
|
70
|
+
elemVal, err := elem.Value.Value(vars)
|
|
71
|
+
if err != nil {
|
|
72
|
+
return val, err
|
|
73
|
+
}
|
|
74
|
+
val = append(val, elemVal)
|
|
75
|
+
}
|
|
76
|
+
return val, nil
|
|
77
|
+
case ObjectValue:
|
|
78
|
+
val := map[string]interface{}{}
|
|
79
|
+
for _, elem := range v.Children {
|
|
80
|
+
elemVal, err := elem.Value.Value(vars)
|
|
81
|
+
if err != nil {
|
|
82
|
+
return val, err
|
|
83
|
+
}
|
|
84
|
+
val[elem.Name] = elemVal
|
|
85
|
+
}
|
|
86
|
+
return val, nil
|
|
87
|
+
default:
|
|
88
|
+
panic(fmt.Errorf("unknown value kind %d", v.Kind))
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
func (v *Value) String() string {
|
|
93
|
+
if v == nil {
|
|
94
|
+
return "<nil>"
|
|
95
|
+
}
|
|
96
|
+
switch v.Kind {
|
|
97
|
+
case Variable:
|
|
98
|
+
return "$" + v.Raw
|
|
99
|
+
case IntValue, FloatValue, EnumValue, BooleanValue, NullValue:
|
|
100
|
+
return v.Raw
|
|
101
|
+
case StringValue, BlockValue:
|
|
102
|
+
return strconv.Quote(v.Raw)
|
|
103
|
+
case ListValue:
|
|
104
|
+
var val []string
|
|
105
|
+
for _, elem := range v.Children {
|
|
106
|
+
val = append(val, elem.Value.String())
|
|
107
|
+
}
|
|
108
|
+
return "[" + strings.Join(val, ",") + "]"
|
|
109
|
+
case ObjectValue:
|
|
110
|
+
var val []string
|
|
111
|
+
for _, elem := range v.Children {
|
|
112
|
+
val = append(val, elem.Name+":"+elem.Value.String())
|
|
113
|
+
}
|
|
114
|
+
return "{" + strings.Join(val, ",") + "}"
|
|
115
|
+
default:
|
|
116
|
+
panic(fmt.Errorf("unknown value kind %d", v.Kind))
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
func (v *Value) Dump() string {
|
|
121
|
+
return v.String()
|
|
122
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
package groups
|
|
2
2
|
|
|
3
3
|
import (
|
|
4
|
+
"context"
|
|
4
5
|
"fmt"
|
|
5
6
|
|
|
6
7
|
"go.mau.fi/libsignal/cipher"
|
|
@@ -34,9 +35,12 @@ type GroupCipher struct {
|
|
|
34
35
|
}
|
|
35
36
|
|
|
36
37
|
// Encrypt will take the given message in bytes and return encrypted bytes.
|
|
37
|
-
func (c *GroupCipher) Encrypt(plaintext []byte) (protocol.GroupCiphertextMessage, error) {
|
|
38
|
+
func (c *GroupCipher) Encrypt(ctx context.Context, plaintext []byte) (protocol.GroupCiphertextMessage, error) {
|
|
38
39
|
// Load the sender key based on id from our store.
|
|
39
|
-
keyRecord := c.senderKeyStore.LoadSenderKey(c.senderKeyID)
|
|
40
|
+
keyRecord, err := c.senderKeyStore.LoadSenderKey(ctx, c.senderKeyID)
|
|
41
|
+
if err != nil {
|
|
42
|
+
return nil, err
|
|
43
|
+
}
|
|
40
44
|
senderKeyState, err := keyRecord.SenderKeyState()
|
|
41
45
|
if err != nil {
|
|
42
46
|
return nil, err
|
|
@@ -63,15 +67,20 @@ func (c *GroupCipher) Encrypt(plaintext []byte) (protocol.GroupCiphertextMessage
|
|
|
63
67
|
)
|
|
64
68
|
|
|
65
69
|
senderKeyState.SetSenderChainKey(senderKeyState.SenderChainKey().Next())
|
|
66
|
-
c.senderKeyStore.StoreSenderKey(c.senderKeyID, keyRecord)
|
|
70
|
+
if err := c.senderKeyStore.StoreSenderKey(ctx, c.senderKeyID, keyRecord); err != nil {
|
|
71
|
+
return nil, err
|
|
72
|
+
}
|
|
67
73
|
|
|
68
74
|
return senderKeyMessage, nil
|
|
69
75
|
}
|
|
70
76
|
|
|
71
77
|
// Decrypt decrypts the given message using an existing session that
|
|
72
78
|
// is stored in the senderKey store.
|
|
73
|
-
func (c *GroupCipher) Decrypt(senderKeyMessage *protocol.SenderKeyMessage) ([]byte, error) {
|
|
74
|
-
keyRecord := c.senderKeyStore.LoadSenderKey(c.senderKeyID)
|
|
79
|
+
func (c *GroupCipher) Decrypt(ctx context.Context, senderKeyMessage *protocol.SenderKeyMessage) ([]byte, error) {
|
|
80
|
+
keyRecord, err := c.senderKeyStore.LoadSenderKey(ctx, c.senderKeyID)
|
|
81
|
+
if err != nil {
|
|
82
|
+
return nil, err
|
|
83
|
+
}
|
|
75
84
|
|
|
76
85
|
if keyRecord.IsEmpty() {
|
|
77
86
|
return nil, fmt.Errorf("%w for %s in %s", signalerror.ErrNoSenderKeyForUser, c.senderKeyID.Sender().String(), c.senderKeyID.GroupID())
|
|
@@ -101,7 +110,9 @@ func (c *GroupCipher) Decrypt(senderKeyMessage *protocol.SenderKeyMessage) ([]by
|
|
|
101
110
|
}
|
|
102
111
|
|
|
103
112
|
// Store the sender key by id.
|
|
104
|
-
c.senderKeyStore.StoreSenderKey(c.senderKeyID, keyRecord)
|
|
113
|
+
if err := c.senderKeyStore.StoreSenderKey(ctx, c.senderKeyID, keyRecord); err != nil {
|
|
114
|
+
return nil, err
|
|
115
|
+
}
|
|
105
116
|
|
|
106
117
|
return plaintext, nil
|
|
107
118
|
}
|
|
@@ -9,6 +9,8 @@
|
|
|
9
9
|
package groups
|
|
10
10
|
|
|
11
11
|
import (
|
|
12
|
+
"context"
|
|
13
|
+
|
|
12
14
|
"go.mau.fi/libsignal/groups/state/record"
|
|
13
15
|
"go.mau.fi/libsignal/groups/state/store"
|
|
14
16
|
"go.mau.fi/libsignal/protocol"
|
|
@@ -34,21 +36,27 @@ type SessionBuilder struct {
|
|
|
34
36
|
|
|
35
37
|
// Process will process an incoming group message and set up the corresponding
|
|
36
38
|
// session for it.
|
|
37
|
-
func (b *SessionBuilder) Process(senderKeyName *protocol.SenderKeyName,
|
|
38
|
-
msg *protocol.SenderKeyDistributionMessage) {
|
|
39
|
+
func (b *SessionBuilder) Process(ctx context.Context, senderKeyName *protocol.SenderKeyName,
|
|
40
|
+
msg *protocol.SenderKeyDistributionMessage) error {
|
|
39
41
|
|
|
40
|
-
senderKeyRecord := b.senderKeyStore.LoadSenderKey(senderKeyName)
|
|
42
|
+
senderKeyRecord, err := b.senderKeyStore.LoadSenderKey(ctx, senderKeyName)
|
|
43
|
+
if err != nil {
|
|
44
|
+
return err
|
|
45
|
+
}
|
|
41
46
|
if senderKeyRecord == nil {
|
|
42
47
|
senderKeyRecord = record.NewSenderKey(b.serializer.SenderKeyRecord, b.serializer.SenderKeyState)
|
|
43
48
|
}
|
|
44
49
|
senderKeyRecord.AddSenderKeyState(msg.ID(), msg.Iteration(), msg.ChainKey(), msg.SignatureKey())
|
|
45
|
-
b.senderKeyStore.StoreSenderKey(senderKeyName, senderKeyRecord)
|
|
50
|
+
return b.senderKeyStore.StoreSenderKey(ctx, senderKeyName, senderKeyRecord)
|
|
46
51
|
}
|
|
47
52
|
|
|
48
53
|
// Create will create a new group session for the given name.
|
|
49
|
-
func (b *SessionBuilder) Create(senderKeyName *protocol.SenderKeyName) (*protocol.SenderKeyDistributionMessage, error) {
|
|
54
|
+
func (b *SessionBuilder) Create(ctx context.Context, senderKeyName *protocol.SenderKeyName) (*protocol.SenderKeyDistributionMessage, error) {
|
|
50
55
|
// Load the senderkey by name
|
|
51
|
-
senderKeyRecord := b.senderKeyStore.LoadSenderKey(senderKeyName)
|
|
56
|
+
senderKeyRecord, err := b.senderKeyStore.LoadSenderKey(ctx, senderKeyName)
|
|
57
|
+
if err != nil {
|
|
58
|
+
return nil, err
|
|
59
|
+
}
|
|
52
60
|
|
|
53
61
|
// If the record is empty, generate new keys.
|
|
54
62
|
if senderKeyRecord == nil || senderKeyRecord.IsEmpty() {
|
|
@@ -62,7 +70,9 @@ func (b *SessionBuilder) Create(senderKeyName *protocol.SenderKeyName) (*protoco
|
|
|
62
70
|
keyhelper.GenerateSenderKey(),
|
|
63
71
|
signingKey,
|
|
64
72
|
)
|
|
65
|
-
b.senderKeyStore.StoreSenderKey(senderKeyName, senderKeyRecord)
|
|
73
|
+
if err := b.senderKeyStore.StoreSenderKey(ctx, senderKeyName, senderKeyRecord); err != nil {
|
|
74
|
+
return nil, err
|
|
75
|
+
}
|
|
66
76
|
}
|
|
67
77
|
|
|
68
78
|
// Get the senderkey state.
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
package store
|
|
2
2
|
|
|
3
3
|
import (
|
|
4
|
+
"context"
|
|
5
|
+
|
|
4
6
|
"go.mau.fi/libsignal/groups/state/record"
|
|
5
7
|
"go.mau.fi/libsignal/protocol"
|
|
6
8
|
)
|
|
7
9
|
|
|
8
10
|
type SenderKey interface {
|
|
9
|
-
StoreSenderKey(senderKeyName *protocol.SenderKeyName, keyRecord *record.SenderKey)
|
|
10
|
-
LoadSenderKey(senderKeyName *protocol.SenderKeyName) *record.SenderKey
|
|
11
|
+
StoreSenderKey(ctx context.Context, senderKeyName *protocol.SenderKeyName, keyRecord *record.SenderKey) error
|
|
12
|
+
LoadSenderKey(ctx context.Context, senderKeyName *protocol.SenderKeyName) (*record.SenderKey, error)
|
|
11
13
|
}
|
|
@@ -77,9 +77,9 @@ func (d *defaultLogger) Error(caller, msg string) {
|
|
|
77
77
|
// allows granular logging of different go files.
|
|
78
78
|
//
|
|
79
79
|
// Example:
|
|
80
|
-
// logger.Configure("RootKey.go,Curve.go")
|
|
81
|
-
// logger.Configure("all")
|
|
82
80
|
//
|
|
81
|
+
// logger.Configure("RootKey.go,Curve.go")
|
|
82
|
+
// logger.Configure("all")
|
|
83
83
|
func (d *defaultLogger) Configure(settings string) {
|
|
84
84
|
d.namespaces = strings.Split(settings, ",")
|
|
85
85
|
}
|
|
@@ -9,10 +9,11 @@
|
|
|
9
9
|
package serialize
|
|
10
10
|
|
|
11
11
|
import (
|
|
12
|
-
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
13
|
-
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
14
12
|
reflect "reflect"
|
|
15
13
|
sync "sync"
|
|
14
|
+
|
|
15
|
+
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
16
|
+
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
16
17
|
)
|
|
17
18
|
|
|
18
19
|
const (
|
|
@@ -9,10 +9,11 @@
|
|
|
9
9
|
package serialize
|
|
10
10
|
|
|
11
11
|
import (
|
|
12
|
-
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
13
|
-
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
14
12
|
reflect "reflect"
|
|
15
13
|
sync "sync"
|
|
14
|
+
|
|
15
|
+
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
16
|
+
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
16
17
|
)
|
|
17
18
|
|
|
18
19
|
const (
|
|
@@ -9,10 +9,11 @@
|
|
|
9
9
|
package serialize
|
|
10
10
|
|
|
11
11
|
import (
|
|
12
|
-
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
13
|
-
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
14
12
|
reflect "reflect"
|
|
15
13
|
sync "sync"
|
|
14
|
+
|
|
15
|
+
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
16
|
+
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
16
17
|
)
|
|
17
18
|
|
|
18
19
|
const (
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
package session
|
|
3
3
|
|
|
4
4
|
import (
|
|
5
|
+
"context"
|
|
5
6
|
"fmt"
|
|
6
7
|
|
|
7
8
|
"go.mau.fi/libsignal/ecc"
|
|
@@ -56,9 +57,9 @@ func NewBuilderFromSignal(signalStore store.SignalProtocol,
|
|
|
56
57
|
// used to encrypt/decrypt messages in that session.
|
|
57
58
|
//
|
|
58
59
|
// Sessions are built from one of three different vectors:
|
|
59
|
-
//
|
|
60
|
-
//
|
|
61
|
-
//
|
|
60
|
+
// - PreKeyBundle retrieved from a server.
|
|
61
|
+
// - PreKeySignalMessage received from a client.
|
|
62
|
+
// - KeyExchangeMessage sent to or received from a client.
|
|
62
63
|
//
|
|
63
64
|
// Sessions are constructed per recipientId + deviceId tuple.
|
|
64
65
|
// Remote logical users are identified by their recipientId,
|
|
@@ -75,22 +76,28 @@ type Builder struct {
|
|
|
75
76
|
|
|
76
77
|
// Process builds a new session from a session record and pre
|
|
77
78
|
// key signal message.
|
|
78
|
-
func (b *Builder) Process(sessionRecord *record.Session, message *protocol.PreKeySignalMessage) (unsignedPreKeyID *optional.Uint32, err error) {
|
|
79
|
+
func (b *Builder) Process(ctx context.Context, sessionRecord *record.Session, message *protocol.PreKeySignalMessage) (unsignedPreKeyID *optional.Uint32, err error) {
|
|
79
80
|
|
|
80
81
|
// Check to see if the keys are trusted.
|
|
81
82
|
theirIdentityKey := message.IdentityKey()
|
|
82
|
-
|
|
83
|
+
trusted, err := b.identityKeyStore.IsTrustedIdentity(ctx, b.remoteAddress, theirIdentityKey)
|
|
84
|
+
if err != nil {
|
|
85
|
+
return nil, err
|
|
86
|
+
}
|
|
87
|
+
if !trusted {
|
|
83
88
|
return nil, signalerror.ErrUntrustedIdentity
|
|
84
89
|
}
|
|
85
90
|
|
|
86
91
|
// Use version 3 of the signal/axolotl protocol.
|
|
87
|
-
unsignedPreKeyID, err = b.processV3(sessionRecord, message)
|
|
92
|
+
unsignedPreKeyID, err = b.processV3(ctx, sessionRecord, message)
|
|
88
93
|
if err != nil {
|
|
89
94
|
return nil, err
|
|
90
95
|
}
|
|
91
96
|
|
|
92
97
|
// Save the identity key to our identity store.
|
|
93
|
-
b.identityKeyStore.SaveIdentity(b.remoteAddress, theirIdentityKey)
|
|
98
|
+
if err := b.identityKeyStore.SaveIdentity(ctx, b.remoteAddress, theirIdentityKey); err != nil {
|
|
99
|
+
return nil, err
|
|
100
|
+
}
|
|
94
101
|
|
|
95
102
|
// Return the unsignedPreKeyID
|
|
96
103
|
return unsignedPreKeyID, nil
|
|
@@ -99,7 +106,7 @@ func (b *Builder) Process(sessionRecord *record.Session, message *protocol.PreKe
|
|
|
99
106
|
// ProcessV3 builds a new session from a session record and pre key
|
|
100
107
|
// signal message. After a session is constructed in this way, the embedded
|
|
101
108
|
// SignalMessage can be decrypted.
|
|
102
|
-
func (b *Builder) processV3(sessionRecord *record.Session,
|
|
109
|
+
func (b *Builder) processV3(ctx context.Context, sessionRecord *record.Session,
|
|
103
110
|
message *protocol.PreKeySignalMessage) (unsignedPreKeyID *optional.Uint32, err error) {
|
|
104
111
|
|
|
105
112
|
logger.Debug("Processing message with PreKeyID: ", message.PreKeyID())
|
|
@@ -114,7 +121,10 @@ func (b *Builder) processV3(sessionRecord *record.Session,
|
|
|
114
121
|
}
|
|
115
122
|
|
|
116
123
|
// Load our signed prekey from our signed prekey store.
|
|
117
|
-
ourSignedPreKeyRecord := b.signedPreKeyStore.LoadSignedPreKey(message.SignedPreKeyID())
|
|
124
|
+
ourSignedPreKeyRecord, err := b.signedPreKeyStore.LoadSignedPreKey(ctx, message.SignedPreKeyID())
|
|
125
|
+
if err != nil {
|
|
126
|
+
return nil, err
|
|
127
|
+
}
|
|
118
128
|
if ourSignedPreKeyRecord == nil {
|
|
119
129
|
return nil, fmt.Errorf("%w with ID %d", signalerror.ErrNoSignedPreKey, message.SignedPreKeyID())
|
|
120
130
|
}
|
|
@@ -131,7 +141,10 @@ func (b *Builder) processV3(sessionRecord *record.Session,
|
|
|
131
141
|
// Set our one time pre key with the one from our prekey store
|
|
132
142
|
// if the message contains a valid pre key id
|
|
133
143
|
if !message.PreKeyID().IsEmpty {
|
|
134
|
-
oneTimePreKey := b.preKeyStore.LoadPreKey(message.PreKeyID().Value)
|
|
144
|
+
oneTimePreKey, err := b.preKeyStore.LoadPreKey(ctx, message.PreKeyID().Value)
|
|
145
|
+
if err != nil {
|
|
146
|
+
return nil, err
|
|
147
|
+
}
|
|
135
148
|
if oneTimePreKey == nil {
|
|
136
149
|
return nil, fmt.Errorf("%w with ID %d", signalerror.ErrNoOneTimeKeyFound, message.PreKeyID().Value)
|
|
137
150
|
}
|
|
@@ -158,7 +171,7 @@ func (b *Builder) processV3(sessionRecord *record.Session,
|
|
|
158
171
|
sessionState.SetRootKey(derivedKeys.RootKey)
|
|
159
172
|
|
|
160
173
|
// Set the session's registration ids and base key
|
|
161
|
-
sessionState.SetLocalRegistrationID(b.identityKeyStore.
|
|
174
|
+
sessionState.SetLocalRegistrationID(b.identityKeyStore.GetLocalRegistrationID())
|
|
162
175
|
sessionState.SetRemoteRegistrationID(message.RegistrationID())
|
|
163
176
|
sessionState.SetSenderBaseKey(message.BaseKey().Serialize())
|
|
164
177
|
|
|
@@ -171,9 +184,13 @@ func (b *Builder) processV3(sessionRecord *record.Session,
|
|
|
171
184
|
|
|
172
185
|
// ProcessBundle builds a new session from a PreKeyBundle retrieved
|
|
173
186
|
// from a server.
|
|
174
|
-
func (b *Builder) ProcessBundle(preKey *prekey.Bundle) error {
|
|
187
|
+
func (b *Builder) ProcessBundle(ctx context.Context, preKey *prekey.Bundle) error {
|
|
175
188
|
// Check to see if the keys are trusted.
|
|
176
|
-
|
|
189
|
+
trusted, err := b.identityKeyStore.IsTrustedIdentity(ctx, b.remoteAddress, preKey.IdentityKey())
|
|
190
|
+
if err != nil {
|
|
191
|
+
return err
|
|
192
|
+
}
|
|
193
|
+
if !trusted {
|
|
177
194
|
return signalerror.ErrUntrustedIdentity
|
|
178
195
|
}
|
|
179
196
|
|
|
@@ -191,7 +208,10 @@ func (b *Builder) ProcessBundle(preKey *prekey.Bundle) error {
|
|
|
191
208
|
}
|
|
192
209
|
|
|
193
210
|
// Load our session and generate keys.
|
|
194
|
-
sessionRecord := b.sessionStore.LoadSession(b.remoteAddress)
|
|
211
|
+
sessionRecord, err := b.sessionStore.LoadSession(ctx, b.remoteAddress)
|
|
212
|
+
if err != nil {
|
|
213
|
+
return err
|
|
214
|
+
}
|
|
195
215
|
if sessionRecord == nil {
|
|
196
216
|
return fmt.Errorf("LoadSession returned nil")
|
|
197
217
|
}
|
|
@@ -254,7 +274,7 @@ func (b *Builder) ProcessBundle(preKey *prekey.Bundle) error {
|
|
|
254
274
|
|
|
255
275
|
// Set the local registration ID based on the registration id in our identity key store.
|
|
256
276
|
sessionState.SetLocalRegistrationID(
|
|
257
|
-
b.identityKeyStore.
|
|
277
|
+
b.identityKeyStore.GetLocalRegistrationID(),
|
|
258
278
|
)
|
|
259
279
|
|
|
260
280
|
// Set the remote registration ID based on the given prekey bundle registrationID.
|
|
@@ -268,8 +288,12 @@ func (b *Builder) ProcessBundle(preKey *prekey.Bundle) error {
|
|
|
268
288
|
)
|
|
269
289
|
|
|
270
290
|
// Store the session in our session store and save the identity in our identity store.
|
|
271
|
-
b.sessionStore.StoreSession(b.remoteAddress, sessionRecord)
|
|
272
|
-
|
|
291
|
+
if err := b.sessionStore.StoreSession(ctx, b.remoteAddress, sessionRecord); err != nil {
|
|
292
|
+
return err
|
|
293
|
+
}
|
|
294
|
+
if err := b.identityKeyStore.SaveIdentity(ctx, b.remoteAddress, preKey.IdentityKey()); err != nil {
|
|
295
|
+
return err
|
|
296
|
+
}
|
|
273
297
|
|
|
274
298
|
return nil
|
|
275
299
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
package session
|
|
2
2
|
|
|
3
3
|
import (
|
|
4
|
+
"context"
|
|
4
5
|
"fmt"
|
|
5
6
|
|
|
6
7
|
"go.mau.fi/libsignal/cipher"
|
|
@@ -65,8 +66,11 @@ type Cipher struct {
|
|
|
65
66
|
|
|
66
67
|
// Encrypt will take the given message in bytes and return an object that follows
|
|
67
68
|
// the CiphertextMessage interface.
|
|
68
|
-
func (d *Cipher) Encrypt(plaintext []byte) (protocol.CiphertextMessage, error) {
|
|
69
|
-
sessionRecord := d.sessionStore.LoadSession(d.remoteAddress)
|
|
69
|
+
func (d *Cipher) Encrypt(ctx context.Context, plaintext []byte) (protocol.CiphertextMessage, error) {
|
|
70
|
+
sessionRecord, err := d.sessionStore.LoadSession(ctx, d.remoteAddress)
|
|
71
|
+
if err != nil {
|
|
72
|
+
return nil, err
|
|
73
|
+
}
|
|
70
74
|
if sessionRecord == nil {
|
|
71
75
|
return nil, fmt.Errorf("LoadSession returned nil")
|
|
72
76
|
}
|
|
@@ -125,79 +129,109 @@ func (d *Cipher) Encrypt(plaintext []byte) (protocol.CiphertextMessage, error) {
|
|
|
125
129
|
}
|
|
126
130
|
|
|
127
131
|
sessionState.SetSenderChainKey(chainKey.NextKey())
|
|
128
|
-
|
|
129
|
-
|
|
132
|
+
trusted, err := d.identityKeyStore.IsTrustedIdentity(ctx, d.remoteAddress, sessionState.RemoteIdentityKey())
|
|
133
|
+
if err != nil {
|
|
134
|
+
return nil, err
|
|
135
|
+
}
|
|
136
|
+
if !trusted {
|
|
137
|
+
return nil, signalerror.ErrUntrustedIdentity
|
|
138
|
+
}
|
|
139
|
+
if err := d.identityKeyStore.SaveIdentity(ctx, d.remoteAddress, sessionState.RemoteIdentityKey()); err != nil {
|
|
140
|
+
return nil, err
|
|
141
|
+
}
|
|
142
|
+
if err := d.sessionStore.StoreSession(ctx, d.remoteAddress, sessionRecord); err != nil {
|
|
143
|
+
return nil, err
|
|
130
144
|
}
|
|
131
|
-
d.identityKeyStore.SaveIdentity(d.remoteAddress, sessionState.RemoteIdentityKey())
|
|
132
|
-
d.sessionStore.StoreSession(d.remoteAddress, sessionRecord)
|
|
133
145
|
return ciphertextMessage, nil
|
|
134
146
|
}
|
|
135
147
|
|
|
136
148
|
// Decrypt decrypts the given message using an existing session that
|
|
137
149
|
// is stored in the session store.
|
|
138
|
-
func (d *Cipher) Decrypt(ciphertextMessage *protocol.SignalMessage) ([]byte, error) {
|
|
139
|
-
plaintext, _, err := d.DecryptAndGetKey(ciphertextMessage)
|
|
150
|
+
func (d *Cipher) Decrypt(ctx context.Context, ciphertextMessage *protocol.SignalMessage) ([]byte, error) {
|
|
151
|
+
plaintext, _, err := d.DecryptAndGetKey(ctx, ciphertextMessage)
|
|
140
152
|
|
|
141
153
|
return plaintext, err
|
|
142
154
|
}
|
|
143
155
|
|
|
144
156
|
// DecryptAndGetKey decrypts the given message using an existing session that
|
|
145
157
|
// is stored in the session store and returns the message keys used for encryption.
|
|
146
|
-
func (d *Cipher) DecryptAndGetKey(ciphertextMessage *protocol.SignalMessage) ([]byte, *message.Keys, error) {
|
|
147
|
-
|
|
158
|
+
func (d *Cipher) DecryptAndGetKey(ctx context.Context, ciphertextMessage *protocol.SignalMessage) ([]byte, *message.Keys, error) {
|
|
159
|
+
contains, err := d.sessionStore.ContainsSession(ctx, d.remoteAddress)
|
|
160
|
+
if err != nil {
|
|
161
|
+
return nil, nil, err
|
|
162
|
+
}
|
|
163
|
+
if !contains {
|
|
148
164
|
return nil, nil, fmt.Errorf("%w %s", signalerror.ErrNoSessionForUser, d.remoteAddress.String())
|
|
149
165
|
}
|
|
150
166
|
|
|
151
167
|
// Load the session record from our session store and decrypt the message.
|
|
152
|
-
sessionRecord := d.sessionStore.LoadSession(d.remoteAddress)
|
|
168
|
+
sessionRecord, err := d.sessionStore.LoadSession(ctx, d.remoteAddress)
|
|
169
|
+
if err != nil {
|
|
170
|
+
return nil, nil, err
|
|
171
|
+
}
|
|
153
172
|
if sessionRecord == nil {
|
|
154
173
|
return nil, nil, fmt.Errorf("LoadSession returned nil")
|
|
155
174
|
}
|
|
156
|
-
plaintext, messageKeys, err := d.DecryptWithRecord(sessionRecord, ciphertextMessage)
|
|
175
|
+
plaintext, messageKeys, err := d.DecryptWithRecord(ctx, sessionRecord, ciphertextMessage)
|
|
157
176
|
if err != nil {
|
|
158
177
|
return nil, nil, err
|
|
159
178
|
}
|
|
160
179
|
|
|
161
|
-
|
|
162
|
-
|
|
180
|
+
trusted, err := d.identityKeyStore.IsTrustedIdentity(ctx, d.remoteAddress, sessionRecord.SessionState().RemoteIdentityKey())
|
|
181
|
+
if err != nil {
|
|
182
|
+
return nil, nil, err
|
|
183
|
+
}
|
|
184
|
+
if !trusted {
|
|
185
|
+
return nil, nil, signalerror.ErrUntrustedIdentity
|
|
186
|
+
}
|
|
187
|
+
if err := d.identityKeyStore.SaveIdentity(ctx, d.remoteAddress, sessionRecord.SessionState().RemoteIdentityKey()); err != nil {
|
|
188
|
+
return nil, nil, err
|
|
163
189
|
}
|
|
164
|
-
d.identityKeyStore.SaveIdentity(d.remoteAddress, sessionRecord.SessionState().RemoteIdentityKey())
|
|
165
190
|
|
|
166
191
|
// Store the session record in our session store.
|
|
167
|
-
d.sessionStore.StoreSession(d.remoteAddress, sessionRecord)
|
|
192
|
+
if err := d.sessionStore.StoreSession(ctx, d.remoteAddress, sessionRecord); err != nil {
|
|
193
|
+
return nil, nil, err
|
|
194
|
+
}
|
|
168
195
|
return plaintext, messageKeys, nil
|
|
169
196
|
}
|
|
170
197
|
|
|
171
|
-
func (d *Cipher) DecryptMessage(ciphertextMessage *protocol.PreKeySignalMessage) ([]byte, error) {
|
|
172
|
-
plaintext, _, err := d.DecryptMessageReturnKey(ciphertextMessage)
|
|
198
|
+
func (d *Cipher) DecryptMessage(ctx context.Context, ciphertextMessage *protocol.PreKeySignalMessage) ([]byte, error) {
|
|
199
|
+
plaintext, _, err := d.DecryptMessageReturnKey(ctx, ciphertextMessage)
|
|
173
200
|
return plaintext, err
|
|
174
201
|
}
|
|
175
202
|
|
|
176
|
-
func (d *Cipher) DecryptMessageReturnKey(ciphertextMessage *protocol.PreKeySignalMessage) ([]byte, *message.Keys, error) {
|
|
203
|
+
func (d *Cipher) DecryptMessageReturnKey(ctx context.Context, ciphertextMessage *protocol.PreKeySignalMessage) ([]byte, *message.Keys, error) {
|
|
177
204
|
// Load or create session record for this session.
|
|
178
|
-
sessionRecord := d.sessionStore.LoadSession(d.remoteAddress)
|
|
205
|
+
sessionRecord, err := d.sessionStore.LoadSession(ctx, d.remoteAddress)
|
|
206
|
+
if err != nil {
|
|
207
|
+
return nil, nil, err
|
|
208
|
+
}
|
|
179
209
|
if sessionRecord == nil {
|
|
180
210
|
return nil, nil, fmt.Errorf("LoadSession returned nil")
|
|
181
211
|
}
|
|
182
|
-
unsignedPreKeyID, err := d.builder.Process(sessionRecord, ciphertextMessage)
|
|
212
|
+
unsignedPreKeyID, err := d.builder.Process(ctx, sessionRecord, ciphertextMessage)
|
|
183
213
|
if err != nil {
|
|
184
214
|
return nil, nil, err
|
|
185
215
|
}
|
|
186
|
-
plaintext, keys, err := d.DecryptWithRecord(sessionRecord, ciphertextMessage.WhisperMessage())
|
|
216
|
+
plaintext, keys, err := d.DecryptWithRecord(ctx, sessionRecord, ciphertextMessage.WhisperMessage())
|
|
187
217
|
if err != nil {
|
|
188
218
|
return nil, nil, err
|
|
189
219
|
}
|
|
190
220
|
// Store the session record in our session store.
|
|
191
|
-
d.sessionStore.StoreSession(d.remoteAddress, sessionRecord)
|
|
221
|
+
if err := d.sessionStore.StoreSession(ctx, d.remoteAddress, sessionRecord); err != nil {
|
|
222
|
+
return nil, nil, err
|
|
223
|
+
}
|
|
192
224
|
if !unsignedPreKeyID.IsEmpty {
|
|
193
|
-
d.preKeyStore.RemovePreKey(unsignedPreKeyID.Value)
|
|
225
|
+
if err := d.preKeyStore.RemovePreKey(ctx, unsignedPreKeyID.Value); err != nil {
|
|
226
|
+
return nil, nil, err
|
|
227
|
+
}
|
|
194
228
|
}
|
|
195
229
|
return plaintext, keys, nil
|
|
196
230
|
}
|
|
197
231
|
|
|
198
232
|
// DecryptWithKey will decrypt the given message using the given symmetric key. This
|
|
199
233
|
// can be used when decrypting messages at a later time if the message key was saved.
|
|
200
|
-
func (d *Cipher) DecryptWithKey(ciphertextMessage *protocol.SignalMessage, key *message.Keys) ([]byte, error) {
|
|
234
|
+
func (d *Cipher) DecryptWithKey(ctx context.Context, ciphertextMessage *protocol.SignalMessage, key *message.Keys) ([]byte, error) {
|
|
201
235
|
logger.Debug("Decrypting ciphertext body: ", ciphertextMessage.Body())
|
|
202
236
|
plaintext, err := decrypt(key, ciphertextMessage.Body())
|
|
203
237
|
if err != nil {
|
|
@@ -209,13 +243,13 @@ func (d *Cipher) DecryptWithKey(ciphertextMessage *protocol.SignalMessage, key *
|
|
|
209
243
|
}
|
|
210
244
|
|
|
211
245
|
// DecryptWithRecord decrypts the given message using the given session record.
|
|
212
|
-
func (d *Cipher) DecryptWithRecord(sessionRecord *record.Session, ciphertext *protocol.SignalMessage) ([]byte, *message.Keys, error) {
|
|
246
|
+
func (d *Cipher) DecryptWithRecord(ctx context.Context, sessionRecord *record.Session, ciphertext *protocol.SignalMessage) ([]byte, *message.Keys, error) {
|
|
213
247
|
logger.Debug("Decrypting ciphertext with record: ", sessionRecord)
|
|
214
248
|
previousStates := sessionRecord.PreviousSessionStates()
|
|
215
249
|
sessionState := sessionRecord.SessionState()
|
|
216
250
|
|
|
217
251
|
// Try and decrypt the message with the current session state.
|
|
218
|
-
plaintext, messageKeys, err := d.DecryptWithState(sessionState, ciphertext)
|
|
252
|
+
plaintext, messageKeys, err := d.DecryptWithState(ctx, sessionState, ciphertext)
|
|
219
253
|
|
|
220
254
|
// If we received an error using the current session state, loop
|
|
221
255
|
// through all previous states.
|
|
@@ -223,7 +257,7 @@ func (d *Cipher) DecryptWithRecord(sessionRecord *record.Session, ciphertext *pr
|
|
|
223
257
|
logger.Warning(err)
|
|
224
258
|
for i, state := range previousStates {
|
|
225
259
|
// Try decrypting the message with previous states
|
|
226
|
-
plaintext, messageKeys, err = d.DecryptWithState(state, ciphertext)
|
|
260
|
+
plaintext, messageKeys, err = d.DecryptWithState(ctx, state, ciphertext)
|
|
227
261
|
if err != nil {
|
|
228
262
|
continue
|
|
229
263
|
}
|
|
@@ -245,7 +279,7 @@ func (d *Cipher) DecryptWithRecord(sessionRecord *record.Session, ciphertext *pr
|
|
|
245
279
|
}
|
|
246
280
|
|
|
247
281
|
// DecryptWithState decrypts the given message with the given session state.
|
|
248
|
-
func (d *Cipher) DecryptWithState(sessionState *record.State, ciphertextMessage *protocol.SignalMessage) ([]byte, *message.Keys, error) {
|
|
282
|
+
func (d *Cipher) DecryptWithState(ctx context.Context, sessionState *record.State, ciphertextMessage *protocol.SignalMessage) ([]byte, *message.Keys, error) {
|
|
249
283
|
logger.Debug("Decrypting ciphertext with session state: ", sessionState)
|
|
250
284
|
if !sessionState.HasSenderChain() {
|
|
251
285
|
logger.Error("Unable to decrypt message with state: ", signalerror.ErrUninitializedSession)
|
|
@@ -278,7 +312,7 @@ func (d *Cipher) DecryptWithState(sessionState *record.State, ciphertextMessage
|
|
|
278
312
|
return nil, nil, fmt.Errorf("failed to verify ciphertext MAC: %w", err)
|
|
279
313
|
}
|
|
280
314
|
|
|
281
|
-
plaintext, err := d.DecryptWithKey(ciphertextMessage, messageKeys)
|
|
315
|
+
plaintext, err := d.DecryptWithKey(ctx, ciphertextMessage, messageKeys)
|
|
282
316
|
if err != nil {
|
|
283
317
|
return nil, nil, err
|
|
284
318
|
}
|