Signal-iOS/SignalServiceKit/protobuf
Jordan Rose 2a8206b7dd SSK: Fix session migration for absent pre-key IDs
Doing this correctly means going "back" to proto2 for SessionRecords,
because we need to distinguish between "0" and "absent" in the
serialized protobuf data. (Note that we can do this independently of
SignalClient properly making this distinction because the proto3
implementation we're using, prost, will omit scalar proto3 fields
whose values match their defaults.)
2021-01-28 12:03:50 -08:00
..
DeviceTransfer.proto Device Transfer Service 2020-05-18 20:48:08 -07:00
Fingerprint.proto Respond to CR. 2018-08-03 14:03:02 -04:00
Groups.proto Add logic for fetching real group credentials 2020-10-15 14:49:48 -07:00
KeyBackup.proto Proto changes 2019-10-14 14:51:04 -07:00
Makefile Implement AxolotlKit<->SignalClient SessionRecord migration 2021-01-28 12:03:50 -08:00
Provisioning.proto Android also doesn't require readReceipts 2019-11-08 12:35:16 -08:00
README.md Swift protos for Envelope 2018-07-25 13:04:26 -06:00
SessionRecord.proto SSK: Fix session migration for absent pre-key IDs 2021-01-28 12:03:50 -08:00
SignalIOS.proto Remove @required from proto enums. 2019-05-29 11:05:01 -04:00
SignalService.proto Rewrite conversation view. 2020-12-10 12:44:13 -03:00
StorageService.proto Add a preference for contact/profile avatars 2021-01-12 16:29:29 -08:00
WebSocketResources.proto Remove @required from proto enums. 2019-05-29 11:05:01 -04:00

SignalServiceKit Protobufs

These protobuf definitions are copied from Signal-Android, but modified to match some iOS conventions.

Prequisites

Install Apple's swift-protobuf (not the similarly named protobuf-swift)

brew install swift-protobuf

This should install an up to date protobuf package as a dependency. Note that since we use the legacy proto2 format, we need to specify this in our .proto files.

syntax = "proto2";

Building Protobuf

cd ~/src/WhisperSystems/SignalServiceKit/protobuf
make