mirror of
https://github.com/octoleo/syncthing.git
synced 2024-12-23 11:28:59 +00:00
f822b10550
Adds a receive only folder type that does not send changes, and where the user can optionally revert local changes. Also changes some of the icons to make the three folder types distinguishable.
63 lines
2.3 KiB
Protocol Buffer
63 lines
2.3 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package db;
|
|
|
|
import "github.com/gogo/protobuf/gogoproto/gogo.proto";
|
|
import "github.com/syncthing/syncthing/lib/protocol/bep.proto";
|
|
|
|
option (gogoproto.goproto_getters_all) = false;
|
|
option (gogoproto.sizer_all) = false;
|
|
option (gogoproto.protosizer_all) = true;
|
|
|
|
message FileVersion {
|
|
protocol.Vector version = 1 [(gogoproto.nullable) = false];
|
|
bytes device = 2;
|
|
bool invalid = 3;
|
|
}
|
|
|
|
message VersionList {
|
|
option (gogoproto.goproto_stringer) = false;
|
|
repeated FileVersion versions = 1 [(gogoproto.nullable) = false];
|
|
}
|
|
|
|
// Must be the same as FileInfo but without the blocks field
|
|
message FileInfoTruncated {
|
|
option (gogoproto.goproto_stringer) = false;
|
|
string name = 1;
|
|
protocol.FileInfoType type = 2;
|
|
int64 size = 3;
|
|
uint32 permissions = 4;
|
|
int64 modified_s = 5;
|
|
int32 modified_ns = 11;
|
|
uint64 modified_by = 12 [(gogoproto.customtype) = "github.com/syncthing/syncthing/lib/protocol.ShortID", (gogoproto.nullable) = false];
|
|
bool deleted = 6;
|
|
bool invalid = 7 [(gogoproto.customname) = "RawInvalid"];
|
|
bool no_permissions = 8;
|
|
protocol.Vector version = 9 [(gogoproto.nullable) = false];
|
|
int64 sequence = 10;
|
|
int32 block_size = 13 [(gogoproto.customname) = "RawBlockSize"];
|
|
// repeated BlockInfo Blocks = 16
|
|
string symlink_target = 17;
|
|
|
|
// see bep.proto
|
|
uint32 local_flags = 1000;
|
|
}
|
|
|
|
// For each folder and device we keep one of these to track the current
|
|
// counts and sequence. We also keep one for the global state of the folder.
|
|
message Counts {
|
|
int32 files = 1;
|
|
int32 directories = 2;
|
|
int32 symlinks = 3;
|
|
int32 deleted = 4;
|
|
int64 bytes = 5;
|
|
int64 sequence = 6; // zero for the global state
|
|
bytes deviceID = 17; // device ID for remote devices, or special values for local/global
|
|
uint32 localFlags = 18; // the local flag for this count bucket
|
|
}
|
|
|
|
message CountsSet {
|
|
repeated Counts counts = 1 [(gogoproto.nullable) = false];
|
|
int64 created = 2; // unix nanos
|
|
}
|