Andrew Ferrazzutti
6f378d1b99
Upgrade only for postgres
2023-11-24 11:41:24 -05:00
Andrew Ferrazzutti
afab8bf265
Set contact table profile key type to bytea
...
Make it use the same data type as the profile keys table.
This fixes UTF encoding errors when using a postgres store.
2023-11-24 01:40:31 -05:00
Scott Weber
8f3f50eb87
Handle ws == nil, and ws reconnect loops
2023-11-22 23:06:41 -05:00
Scott Weber
e20d746376
Increase WS read limit to 1MB from default of 32KB
2023-11-22 21:59:55 -05:00
Scott Weber
b2da336627
Perform "ClearKeysAndDisconnect" on prekey decryption errors
...
Might be a bit aggressive, but necessary because right now there are a
bunch of bridges with broken prekeys.
Required extensive work on disconnect/reconnect logic.
2023-11-20 22:28:49 -05:00
Scott Weber
cef8e3049a
Got my logic backwards
2023-11-19 20:22:35 -05:00
Scott Weber
62274973fb
Ignore contact if it doesn't have a valid UUID
...
It seems we sometimes get UUIDs formated like "PNI:a1b2c3...", they
could probably be parsed into some sort of PNI contact but just drop
them for now
2023-11-19 10:48:51 -05:00
Scott Weber
ece2eed474
Make provisioning API safer and clear device keys before storing prekeys
2023-11-19 07:36:21 -05:00
Scott Weber
16787a28b5
Don't try to save contact with no UUID
...
Also reduce some contact logging
2023-11-17 12:01:35 -05:00
Scott Weber
ae8de47390
Serialize access to encryption per bridge user
...
To prevent races in incrementing ratchets and such
2023-11-15 13:41:11 -05:00
Scott Weber
d308f27e61
Request contacts from Signal device when creating new Matrix room
2023-11-15 10:58:42 -05:00
Andrew Ferrazzutti
353d6c1b7c
Don't break inbound bridging on DMing own account ( #11 )
...
Without this, sending a message in the Note to Self portal / DM with
your own Signal account breaks all subsequent inbound bridging.
2023-11-14 15:43:37 -05:00
Scott Weber
9df4ed6ed3
Make error more generic to not break error reporting
2023-11-14 15:12:22 -05:00
Scott Weber
79047202e7
Basic support for receiving Signal contact cards
2023-11-13 14:33:26 -05:00
Andrew Ferrazzutti
71254782af
Fix nil dereferences ( #14 )
...
* Return before dereferencing nil usmc
* Return before dereferencing nil msg
2023-11-13 09:24:10 -05:00
Scott Weber
46d5b4e03c
If bridge has upgraded and user tries to send a message before logging back in, send BAD_CREDENTIALS
2023-11-10 14:05:09 -05:00
Scott Weber
b7bcdfdd39
Sender envelopes include the sender e164!!! KEEP THEM
2023-11-08 15:54:18 -05:00
Scott Weber
7007a36c90
Handle updating puppet with contact info even if profile fetch fails
2023-11-08 12:08:40 -05:00
Scott Weber
aee115d81f
Add "contacts", and layer on top of profiles
2023-11-07 23:08:31 -05:00
Scott Weber
da5eb0c8e7
Add TransientDisconnect debouncing, and fix BridgeState sending bug
2023-11-03 16:55:02 -04:00
Scott Weber
870e776422
Don't crash when sending in a group by myself
2023-11-01 11:57:16 -04:00
Scott Weber
36da9e6e3b
Fix up contexts and error messages
2023-11-01 00:23:14 -04:00
Scott Weber
b04a919c65
Handle restarting provisioning session
2023-11-01 00:10:36 -04:00
Scott Weber
d9cb00f9ff
Fix outgoing videos, voice notes and files
2023-10-26 14:39:27 -04:00
Scott Weber
4966bda94a
Disappearing messages!
2023-10-22 23:39:59 -04:00
Scott Weber
906d0c82c9
Add logging to try and figure out why CONNECTED state wasn't sent
2023-10-19 09:39:03 -04:00
Scott Weber
8b991e0ad6
Stop trying to handle SS plaintext
...
It's a DecryptionErrorMessage to retry key sending for SenderKey
messages I think, so not needed right now. Also the crazy scenario my
devices were in that allowed me to test this is now resolved so I can't
easily test this anymore.
2023-10-11 18:14:42 -04:00
Scott Weber
984699760f
Try unmarshalling SS plaintext message again
2023-10-11 14:55:04 -04:00
Scott Weber
58b92be3ca
Don't send delivered receipts so aggressively, and try parsing SS plaintext
2023-10-11 14:47:11 -04:00
Scott Weber
b308af43c4
Fix TRANSIENT_DISCONNECT on shutdown again
...
errors.Wrap would return nil if err was nil, while fmt.Errorf does not
2023-10-02 00:30:09 -04:00
Scott Weber
5d00781973
Handle delivery receipts and forward to matrix as MSS
2023-10-02 00:18:36 -04:00
Scott Weber
810c83234f
Handle sync read messages from other signal devices
2023-10-01 23:30:12 -04:00
Scott Weber
cb905c07c4
Send read syncs to other signal devices
2023-10-01 23:06:27 -04:00
Scott Weber
48f48ab02b
Bridge read receipts matrix -> signal
2023-10-01 22:34:12 -04:00
Scott Weber
8c03c759b6
Bridging read receipts signal -> matrix
2023-10-01 12:00:30 -04:00
Tulir Asokan
021b5ca929
Switch to ON CONFLICT DO UPDATE instead of INSERT OR REPLACE
2023-09-30 16:23:20 +03:00
Tulir Asokan
2ca4e2bbcd
Mention precompiled libsignals in readme
2023-09-30 15:31:27 +03:00
Tulir Asokan
60fc9aece9
Sync go mod and sum files
2023-09-30 14:51:04 +03:00
Tulir Asokan
db656d4890
Fix incorrect usage of legacy pkg/errors
2023-09-30 14:39:26 +03:00
Scott Weber
d672272cad
Lowercase incoming reaction target author UUID
2023-09-28 19:41:10 -04:00
Scott Weber
d22ffc00f6
Send delivery receipts
2023-09-28 00:19:22 -04:00
Scott Weber
5ebb5ff817
Handle incoming calls with a notice
2023-09-27 23:31:24 -04:00
Scott Weber
a648f79eaf
Group avatars
2023-09-27 21:44:37 -04:00
Scott Weber
310989d662
Refactor decrypting attachments into it's own function
2023-09-27 16:38:08 -04:00
Scott Weber
4f4aa4810b
Bridge typing notification for matrix -> signal (DMs only)
...
Not supporting groups at the moment because that will require the
ability to send using SenderKey for the experience to not be horrible
2023-09-27 16:01:55 -04:00
Scott Weber
dad2211541
Refactor sending to pass around Content instead of DataMessage
...
No functional changes intended
2023-09-27 15:46:32 -04:00
Scott Weber
11bc54e976
Bridge typing notification signal -> matrix
2023-09-27 15:05:18 -04:00
Scott Weber
2142a9b3c2
Don't emit bridge state during clean shutdown
2023-09-27 14:25:02 -04:00
Scott Weber
7985b8ea81
Mentions from matrix -> signal
2023-09-27 14:06:27 -04:00
Scott Weber
125c686eaa
Improve logging for HTTP requests
2023-09-22 10:29:14 -04:00