2 import "goby/protobuf/option_extensions.proto";
3 import "dccl/option_extensions.proto";
5 package goby.acomms.protobuf;
9 option (dccl.msg).id = 7;
10 option (dccl.msg).max_bytes = 64;
11 option (dccl.msg).codec_version = 3;
13 required int32 src = 1 [
14 (dccl.field).min = -1,
15 (dccl.field).max = 62,
16 (dccl.field).in_head = true
18 required int32 dest = 2 [
19 (dccl.field).min = -1,
20 (dccl.field).max = 62,
21 (dccl.field).in_head = true
24 required int32 fragment = 3 [
26 (dccl.field).max = 18079
27 ]; // max file: 1048576 / data length: 58
29 required bool is_last_fragment = 4;
31 required int32 num_bytes = 5 [(dccl.field).min = 1, (dccl.field).max = 58];
32 required bytes data = 6 [(dccl.field).max_length = 58];
35 message TransferRequest
37 option (dccl.msg).id = 8;
38 option (dccl.msg).max_bytes = 64;
39 option (dccl.msg).codec_version = 3;
41 required int32 src = 1 [
42 (dccl.field).min = -1,
43 (dccl.field).max = 62,
44 (dccl.field).in_head = true
46 required int32 dest = 2 [
47 (dccl.field).min = -1,
48 (dccl.field).max = 62,
49 (dccl.field).in_head = true
57 required PushPull push_or_pull = 3 [(dccl.field).in_head = true];
58 required string file = 10 [(dccl.field).max_length = 60];
61 message TransferResponse
63 option (dccl.msg).id = 9;
64 option (dccl.msg).max_bytes = 64;
65 option (dccl.msg).codec_version = 3;
67 required int32 src = 1 [
68 (dccl.field).min = -1,
69 (dccl.field).max = 62,
70 (dccl.field).in_head = true
72 required int32 dest = 2 [
73 (dccl.field).min = -1,
74 (dccl.field).max = 62,
75 (dccl.field).in_head = true
78 required bool transfer_successful = 3;
82 COULD_NOT_READ_FILE = 1;
85 COULD_NOT_WRITE_FILE = 4;
86 ERROR_WHILE_READING = 5;
89 optional ErrorCode error = 4;
91 optional int32 num_fragments = 5 [
93 (dccl.field).max = 18079
94 ]; // max file: 1048576 / data length: 58