github.com/mre-fog/trillianxx@v1.1.2-0.20180615153820-ae375a99d36a/trillian_log_api.pb.go (about) 1 // Code generated by protoc-gen-go. DO NOT EDIT. 2 // source: trillian_log_api.proto 3 4 /* 5 Package trillian is a generated protocol buffer package. 6 7 It is generated from these files: 8 trillian_log_api.proto 9 trillian_map_api.proto 10 trillian_admin_api.proto 11 trillian.proto 12 13 It has these top-level messages: 14 ChargeTo 15 QueueLeafRequest 16 QueueLeafResponse 17 AddSequencedLeafRequest 18 AddSequencedLeafResponse 19 GetInclusionProofRequest 20 GetInclusionProofResponse 21 GetInclusionProofByHashRequest 22 GetInclusionProofByHashResponse 23 GetConsistencyProofRequest 24 GetConsistencyProofResponse 25 GetLatestSignedLogRootRequest 26 GetLatestSignedLogRootResponse 27 GetSequencedLeafCountRequest 28 GetSequencedLeafCountResponse 29 GetEntryAndProofRequest 30 GetEntryAndProofResponse 31 InitLogRequest 32 InitLogResponse 33 QueueLeavesRequest 34 QueueLeavesResponse 35 AddSequencedLeavesRequest 36 AddSequencedLeavesResponse 37 GetLeavesByIndexRequest 38 GetLeavesByIndexResponse 39 GetLeavesByRangeRequest 40 GetLeavesByRangeResponse 41 GetLeavesByHashRequest 42 GetLeavesByHashResponse 43 QueuedLogLeaf 44 LogLeaf 45 Proof 46 MapLeaf 47 MapLeafInclusion 48 GetMapLeavesRequest 49 GetMapLeavesByRevisionRequest 50 GetMapLeavesResponse 51 SetMapLeavesRequest 52 SetMapLeavesResponse 53 GetSignedMapRootRequest 54 GetSignedMapRootByRevisionRequest 55 GetSignedMapRootResponse 56 InitMapRequest 57 InitMapResponse 58 ListTreesRequest 59 ListTreesResponse 60 GetTreeRequest 61 CreateTreeRequest 62 UpdateTreeRequest 63 DeleteTreeRequest 64 UndeleteTreeRequest 65 Tree 66 SignedEntryTimestamp 67 SignedLogRoot 68 SignedMapRoot 69 */ 70 package trillian 71 72 import proto "github.com/golang/protobuf/proto" 73 import fmt "fmt" 74 import math "math" 75 import _ "google.golang.org/genproto/googleapis/api/annotations" 76 import google_protobuf1 "github.com/golang/protobuf/ptypes/timestamp" 77 import google_rpc "google.golang.org/genproto/googleapis/rpc/status" 78 79 import ( 80 context "golang.org/x/net/context" 81 grpc "google.golang.org/grpc" 82 ) 83 84 // Reference imports to suppress errors if they are not otherwise used. 85 var _ = proto.Marshal 86 var _ = fmt.Errorf 87 var _ = math.Inf 88 89 // This is a compile-time assertion to ensure that this generated file 90 // is compatible with the proto package it is being compiled against. 91 // A compilation error at this line likely means your copy of the 92 // proto package needs to be updated. 93 const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package 94 95 // ChargeTo describes the user(s) associated with the request whose quota should 96 // be checked and charged. 97 type ChargeTo struct { 98 // user is a list of personality-defined strings. 99 // Trillian will treat them as /User/%{user}/... keys when checking and 100 // charging quota. 101 // If one or more of the specified users has insufficient quota, the 102 // request will be denied. 103 // 104 // As an example, a Certificate Transparency frontend might set the following 105 // user strings when sending a QueueLeaves request to the Trillian log: 106 // - The requesting IP address. 107 // This would limit the number of requests per IP. 108 // - The "intermediate-<hash>" for each of the intermediate certificates in 109 // the submitted chain. 110 // This would have the effect of limiting the rate of submissions under 111 // a given intermediate/root. 112 User []string `protobuf:"bytes,1,rep,name=user" json:"user,omitempty"` 113 } 114 115 func (m *ChargeTo) Reset() { *m = ChargeTo{} } 116 func (m *ChargeTo) String() string { return proto.CompactTextString(m) } 117 func (*ChargeTo) ProtoMessage() {} 118 func (*ChargeTo) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} } 119 120 func (m *ChargeTo) GetUser() []string { 121 if m != nil { 122 return m.User 123 } 124 return nil 125 } 126 127 type QueueLeafRequest struct { 128 LogId int64 `protobuf:"varint,1,opt,name=log_id,json=logId" json:"log_id,omitempty"` 129 Leaf *LogLeaf `protobuf:"bytes,2,opt,name=leaf" json:"leaf,omitempty"` 130 ChargeTo *ChargeTo `protobuf:"bytes,3,opt,name=charge_to,json=chargeTo" json:"charge_to,omitempty"` 131 } 132 133 func (m *QueueLeafRequest) Reset() { *m = QueueLeafRequest{} } 134 func (m *QueueLeafRequest) String() string { return proto.CompactTextString(m) } 135 func (*QueueLeafRequest) ProtoMessage() {} 136 func (*QueueLeafRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} } 137 138 func (m *QueueLeafRequest) GetLogId() int64 { 139 if m != nil { 140 return m.LogId 141 } 142 return 0 143 } 144 145 func (m *QueueLeafRequest) GetLeaf() *LogLeaf { 146 if m != nil { 147 return m.Leaf 148 } 149 return nil 150 } 151 152 func (m *QueueLeafRequest) GetChargeTo() *ChargeTo { 153 if m != nil { 154 return m.ChargeTo 155 } 156 return nil 157 } 158 159 type QueueLeafResponse struct { 160 QueuedLeaf *QueuedLogLeaf `protobuf:"bytes,2,opt,name=queued_leaf,json=queuedLeaf" json:"queued_leaf,omitempty"` 161 } 162 163 func (m *QueueLeafResponse) Reset() { *m = QueueLeafResponse{} } 164 func (m *QueueLeafResponse) String() string { return proto.CompactTextString(m) } 165 func (*QueueLeafResponse) ProtoMessage() {} 166 func (*QueueLeafResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} } 167 168 func (m *QueueLeafResponse) GetQueuedLeaf() *QueuedLogLeaf { 169 if m != nil { 170 return m.QueuedLeaf 171 } 172 return nil 173 } 174 175 type AddSequencedLeafRequest struct { 176 LogId int64 `protobuf:"varint,1,opt,name=log_id,json=logId" json:"log_id,omitempty"` 177 Leaf *LogLeaf `protobuf:"bytes,2,opt,name=leaf" json:"leaf,omitempty"` 178 ChargeTo *ChargeTo `protobuf:"bytes,3,opt,name=charge_to,json=chargeTo" json:"charge_to,omitempty"` 179 } 180 181 func (m *AddSequencedLeafRequest) Reset() { *m = AddSequencedLeafRequest{} } 182 func (m *AddSequencedLeafRequest) String() string { return proto.CompactTextString(m) } 183 func (*AddSequencedLeafRequest) ProtoMessage() {} 184 func (*AddSequencedLeafRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} } 185 186 func (m *AddSequencedLeafRequest) GetLogId() int64 { 187 if m != nil { 188 return m.LogId 189 } 190 return 0 191 } 192 193 func (m *AddSequencedLeafRequest) GetLeaf() *LogLeaf { 194 if m != nil { 195 return m.Leaf 196 } 197 return nil 198 } 199 200 func (m *AddSequencedLeafRequest) GetChargeTo() *ChargeTo { 201 if m != nil { 202 return m.ChargeTo 203 } 204 return nil 205 } 206 207 type AddSequencedLeafResponse struct { 208 Result *QueuedLogLeaf `protobuf:"bytes,2,opt,name=result" json:"result,omitempty"` 209 } 210 211 func (m *AddSequencedLeafResponse) Reset() { *m = AddSequencedLeafResponse{} } 212 func (m *AddSequencedLeafResponse) String() string { return proto.CompactTextString(m) } 213 func (*AddSequencedLeafResponse) ProtoMessage() {} 214 func (*AddSequencedLeafResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} } 215 216 func (m *AddSequencedLeafResponse) GetResult() *QueuedLogLeaf { 217 if m != nil { 218 return m.Result 219 } 220 return nil 221 } 222 223 type GetInclusionProofRequest struct { 224 LogId int64 `protobuf:"varint,1,opt,name=log_id,json=logId" json:"log_id,omitempty"` 225 LeafIndex int64 `protobuf:"varint,2,opt,name=leaf_index,json=leafIndex" json:"leaf_index,omitempty"` 226 TreeSize int64 `protobuf:"varint,3,opt,name=tree_size,json=treeSize" json:"tree_size,omitempty"` 227 ChargeTo *ChargeTo `protobuf:"bytes,4,opt,name=charge_to,json=chargeTo" json:"charge_to,omitempty"` 228 } 229 230 func (m *GetInclusionProofRequest) Reset() { *m = GetInclusionProofRequest{} } 231 func (m *GetInclusionProofRequest) String() string { return proto.CompactTextString(m) } 232 func (*GetInclusionProofRequest) ProtoMessage() {} 233 func (*GetInclusionProofRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} } 234 235 func (m *GetInclusionProofRequest) GetLogId() int64 { 236 if m != nil { 237 return m.LogId 238 } 239 return 0 240 } 241 242 func (m *GetInclusionProofRequest) GetLeafIndex() int64 { 243 if m != nil { 244 return m.LeafIndex 245 } 246 return 0 247 } 248 249 func (m *GetInclusionProofRequest) GetTreeSize() int64 { 250 if m != nil { 251 return m.TreeSize 252 } 253 return 0 254 } 255 256 func (m *GetInclusionProofRequest) GetChargeTo() *ChargeTo { 257 if m != nil { 258 return m.ChargeTo 259 } 260 return nil 261 } 262 263 type GetInclusionProofResponse struct { 264 Proof *Proof `protobuf:"bytes,2,opt,name=proof" json:"proof,omitempty"` 265 SignedLogRoot *SignedLogRoot `protobuf:"bytes,3,opt,name=signed_log_root,json=signedLogRoot" json:"signed_log_root,omitempty"` 266 } 267 268 func (m *GetInclusionProofResponse) Reset() { *m = GetInclusionProofResponse{} } 269 func (m *GetInclusionProofResponse) String() string { return proto.CompactTextString(m) } 270 func (*GetInclusionProofResponse) ProtoMessage() {} 271 func (*GetInclusionProofResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} } 272 273 func (m *GetInclusionProofResponse) GetProof() *Proof { 274 if m != nil { 275 return m.Proof 276 } 277 return nil 278 } 279 280 func (m *GetInclusionProofResponse) GetSignedLogRoot() *SignedLogRoot { 281 if m != nil { 282 return m.SignedLogRoot 283 } 284 return nil 285 } 286 287 type GetInclusionProofByHashRequest struct { 288 LogId int64 `protobuf:"varint,1,opt,name=log_id,json=logId" json:"log_id,omitempty"` 289 LeafHash []byte `protobuf:"bytes,2,opt,name=leaf_hash,json=leafHash,proto3" json:"leaf_hash,omitempty"` 290 TreeSize int64 `protobuf:"varint,3,opt,name=tree_size,json=treeSize" json:"tree_size,omitempty"` 291 OrderBySequence bool `protobuf:"varint,4,opt,name=order_by_sequence,json=orderBySequence" json:"order_by_sequence,omitempty"` 292 ChargeTo *ChargeTo `protobuf:"bytes,5,opt,name=charge_to,json=chargeTo" json:"charge_to,omitempty"` 293 } 294 295 func (m *GetInclusionProofByHashRequest) Reset() { *m = GetInclusionProofByHashRequest{} } 296 func (m *GetInclusionProofByHashRequest) String() string { return proto.CompactTextString(m) } 297 func (*GetInclusionProofByHashRequest) ProtoMessage() {} 298 func (*GetInclusionProofByHashRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} } 299 300 func (m *GetInclusionProofByHashRequest) GetLogId() int64 { 301 if m != nil { 302 return m.LogId 303 } 304 return 0 305 } 306 307 func (m *GetInclusionProofByHashRequest) GetLeafHash() []byte { 308 if m != nil { 309 return m.LeafHash 310 } 311 return nil 312 } 313 314 func (m *GetInclusionProofByHashRequest) GetTreeSize() int64 { 315 if m != nil { 316 return m.TreeSize 317 } 318 return 0 319 } 320 321 func (m *GetInclusionProofByHashRequest) GetOrderBySequence() bool { 322 if m != nil { 323 return m.OrderBySequence 324 } 325 return false 326 } 327 328 func (m *GetInclusionProofByHashRequest) GetChargeTo() *ChargeTo { 329 if m != nil { 330 return m.ChargeTo 331 } 332 return nil 333 } 334 335 type GetInclusionProofByHashResponse struct { 336 // Logs can potentially contain leaves with duplicate hashes so it's possible 337 // for this to return multiple proofs. 338 // TODO(gbelvin) only return one proof. 339 Proof []*Proof `protobuf:"bytes,2,rep,name=proof" json:"proof,omitempty"` 340 SignedLogRoot *SignedLogRoot `protobuf:"bytes,3,opt,name=signed_log_root,json=signedLogRoot" json:"signed_log_root,omitempty"` 341 } 342 343 func (m *GetInclusionProofByHashResponse) Reset() { *m = GetInclusionProofByHashResponse{} } 344 func (m *GetInclusionProofByHashResponse) String() string { return proto.CompactTextString(m) } 345 func (*GetInclusionProofByHashResponse) ProtoMessage() {} 346 func (*GetInclusionProofByHashResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} } 347 348 func (m *GetInclusionProofByHashResponse) GetProof() []*Proof { 349 if m != nil { 350 return m.Proof 351 } 352 return nil 353 } 354 355 func (m *GetInclusionProofByHashResponse) GetSignedLogRoot() *SignedLogRoot { 356 if m != nil { 357 return m.SignedLogRoot 358 } 359 return nil 360 } 361 362 type GetConsistencyProofRequest struct { 363 LogId int64 `protobuf:"varint,1,opt,name=log_id,json=logId" json:"log_id,omitempty"` 364 FirstTreeSize int64 `protobuf:"varint,2,opt,name=first_tree_size,json=firstTreeSize" json:"first_tree_size,omitempty"` 365 SecondTreeSize int64 `protobuf:"varint,3,opt,name=second_tree_size,json=secondTreeSize" json:"second_tree_size,omitempty"` 366 ChargeTo *ChargeTo `protobuf:"bytes,4,opt,name=charge_to,json=chargeTo" json:"charge_to,omitempty"` 367 } 368 369 func (m *GetConsistencyProofRequest) Reset() { *m = GetConsistencyProofRequest{} } 370 func (m *GetConsistencyProofRequest) String() string { return proto.CompactTextString(m) } 371 func (*GetConsistencyProofRequest) ProtoMessage() {} 372 func (*GetConsistencyProofRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} } 373 374 func (m *GetConsistencyProofRequest) GetLogId() int64 { 375 if m != nil { 376 return m.LogId 377 } 378 return 0 379 } 380 381 func (m *GetConsistencyProofRequest) GetFirstTreeSize() int64 { 382 if m != nil { 383 return m.FirstTreeSize 384 } 385 return 0 386 } 387 388 func (m *GetConsistencyProofRequest) GetSecondTreeSize() int64 { 389 if m != nil { 390 return m.SecondTreeSize 391 } 392 return 0 393 } 394 395 func (m *GetConsistencyProofRequest) GetChargeTo() *ChargeTo { 396 if m != nil { 397 return m.ChargeTo 398 } 399 return nil 400 } 401 402 type GetConsistencyProofResponse struct { 403 Proof *Proof `protobuf:"bytes,2,opt,name=proof" json:"proof,omitempty"` 404 SignedLogRoot *SignedLogRoot `protobuf:"bytes,3,opt,name=signed_log_root,json=signedLogRoot" json:"signed_log_root,omitempty"` 405 } 406 407 func (m *GetConsistencyProofResponse) Reset() { *m = GetConsistencyProofResponse{} } 408 func (m *GetConsistencyProofResponse) String() string { return proto.CompactTextString(m) } 409 func (*GetConsistencyProofResponse) ProtoMessage() {} 410 func (*GetConsistencyProofResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} } 411 412 func (m *GetConsistencyProofResponse) GetProof() *Proof { 413 if m != nil { 414 return m.Proof 415 } 416 return nil 417 } 418 419 func (m *GetConsistencyProofResponse) GetSignedLogRoot() *SignedLogRoot { 420 if m != nil { 421 return m.SignedLogRoot 422 } 423 return nil 424 } 425 426 type GetLatestSignedLogRootRequest struct { 427 LogId int64 `protobuf:"varint,1,opt,name=log_id,json=logId" json:"log_id,omitempty"` 428 ChargeTo *ChargeTo `protobuf:"bytes,2,opt,name=charge_to,json=chargeTo" json:"charge_to,omitempty"` 429 } 430 431 func (m *GetLatestSignedLogRootRequest) Reset() { *m = GetLatestSignedLogRootRequest{} } 432 func (m *GetLatestSignedLogRootRequest) String() string { return proto.CompactTextString(m) } 433 func (*GetLatestSignedLogRootRequest) ProtoMessage() {} 434 func (*GetLatestSignedLogRootRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} } 435 436 func (m *GetLatestSignedLogRootRequest) GetLogId() int64 { 437 if m != nil { 438 return m.LogId 439 } 440 return 0 441 } 442 443 func (m *GetLatestSignedLogRootRequest) GetChargeTo() *ChargeTo { 444 if m != nil { 445 return m.ChargeTo 446 } 447 return nil 448 } 449 450 type GetLatestSignedLogRootResponse struct { 451 SignedLogRoot *SignedLogRoot `protobuf:"bytes,2,opt,name=signed_log_root,json=signedLogRoot" json:"signed_log_root,omitempty"` 452 } 453 454 func (m *GetLatestSignedLogRootResponse) Reset() { *m = GetLatestSignedLogRootResponse{} } 455 func (m *GetLatestSignedLogRootResponse) String() string { return proto.CompactTextString(m) } 456 func (*GetLatestSignedLogRootResponse) ProtoMessage() {} 457 func (*GetLatestSignedLogRootResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} } 458 459 func (m *GetLatestSignedLogRootResponse) GetSignedLogRoot() *SignedLogRoot { 460 if m != nil { 461 return m.SignedLogRoot 462 } 463 return nil 464 } 465 466 type GetSequencedLeafCountRequest struct { 467 LogId int64 `protobuf:"varint,1,opt,name=log_id,json=logId" json:"log_id,omitempty"` 468 ChargeTo *ChargeTo `protobuf:"bytes,2,opt,name=charge_to,json=chargeTo" json:"charge_to,omitempty"` 469 } 470 471 func (m *GetSequencedLeafCountRequest) Reset() { *m = GetSequencedLeafCountRequest{} } 472 func (m *GetSequencedLeafCountRequest) String() string { return proto.CompactTextString(m) } 473 func (*GetSequencedLeafCountRequest) ProtoMessage() {} 474 func (*GetSequencedLeafCountRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} } 475 476 func (m *GetSequencedLeafCountRequest) GetLogId() int64 { 477 if m != nil { 478 return m.LogId 479 } 480 return 0 481 } 482 483 func (m *GetSequencedLeafCountRequest) GetChargeTo() *ChargeTo { 484 if m != nil { 485 return m.ChargeTo 486 } 487 return nil 488 } 489 490 type GetSequencedLeafCountResponse struct { 491 LeafCount int64 `protobuf:"varint,2,opt,name=leaf_count,json=leafCount" json:"leaf_count,omitempty"` 492 } 493 494 func (m *GetSequencedLeafCountResponse) Reset() { *m = GetSequencedLeafCountResponse{} } 495 func (m *GetSequencedLeafCountResponse) String() string { return proto.CompactTextString(m) } 496 func (*GetSequencedLeafCountResponse) ProtoMessage() {} 497 func (*GetSequencedLeafCountResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} } 498 499 func (m *GetSequencedLeafCountResponse) GetLeafCount() int64 { 500 if m != nil { 501 return m.LeafCount 502 } 503 return 0 504 } 505 506 type GetEntryAndProofRequest struct { 507 LogId int64 `protobuf:"varint,1,opt,name=log_id,json=logId" json:"log_id,omitempty"` 508 LeafIndex int64 `protobuf:"varint,2,opt,name=leaf_index,json=leafIndex" json:"leaf_index,omitempty"` 509 TreeSize int64 `protobuf:"varint,3,opt,name=tree_size,json=treeSize" json:"tree_size,omitempty"` 510 ChargeTo *ChargeTo `protobuf:"bytes,4,opt,name=charge_to,json=chargeTo" json:"charge_to,omitempty"` 511 } 512 513 func (m *GetEntryAndProofRequest) Reset() { *m = GetEntryAndProofRequest{} } 514 func (m *GetEntryAndProofRequest) String() string { return proto.CompactTextString(m) } 515 func (*GetEntryAndProofRequest) ProtoMessage() {} 516 func (*GetEntryAndProofRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} } 517 518 func (m *GetEntryAndProofRequest) GetLogId() int64 { 519 if m != nil { 520 return m.LogId 521 } 522 return 0 523 } 524 525 func (m *GetEntryAndProofRequest) GetLeafIndex() int64 { 526 if m != nil { 527 return m.LeafIndex 528 } 529 return 0 530 } 531 532 func (m *GetEntryAndProofRequest) GetTreeSize() int64 { 533 if m != nil { 534 return m.TreeSize 535 } 536 return 0 537 } 538 539 func (m *GetEntryAndProofRequest) GetChargeTo() *ChargeTo { 540 if m != nil { 541 return m.ChargeTo 542 } 543 return nil 544 } 545 546 type GetEntryAndProofResponse struct { 547 Proof *Proof `protobuf:"bytes,2,opt,name=proof" json:"proof,omitempty"` 548 Leaf *LogLeaf `protobuf:"bytes,3,opt,name=leaf" json:"leaf,omitempty"` 549 SignedLogRoot *SignedLogRoot `protobuf:"bytes,4,opt,name=signed_log_root,json=signedLogRoot" json:"signed_log_root,omitempty"` 550 } 551 552 func (m *GetEntryAndProofResponse) Reset() { *m = GetEntryAndProofResponse{} } 553 func (m *GetEntryAndProofResponse) String() string { return proto.CompactTextString(m) } 554 func (*GetEntryAndProofResponse) ProtoMessage() {} 555 func (*GetEntryAndProofResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} } 556 557 func (m *GetEntryAndProofResponse) GetProof() *Proof { 558 if m != nil { 559 return m.Proof 560 } 561 return nil 562 } 563 564 func (m *GetEntryAndProofResponse) GetLeaf() *LogLeaf { 565 if m != nil { 566 return m.Leaf 567 } 568 return nil 569 } 570 571 func (m *GetEntryAndProofResponse) GetSignedLogRoot() *SignedLogRoot { 572 if m != nil { 573 return m.SignedLogRoot 574 } 575 return nil 576 } 577 578 type InitLogRequest struct { 579 LogId int64 `protobuf:"varint,1,opt,name=log_id,json=logId" json:"log_id,omitempty"` 580 ChargeTo *ChargeTo `protobuf:"bytes,2,opt,name=charge_to,json=chargeTo" json:"charge_to,omitempty"` 581 } 582 583 func (m *InitLogRequest) Reset() { *m = InitLogRequest{} } 584 func (m *InitLogRequest) String() string { return proto.CompactTextString(m) } 585 func (*InitLogRequest) ProtoMessage() {} 586 func (*InitLogRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} } 587 588 func (m *InitLogRequest) GetLogId() int64 { 589 if m != nil { 590 return m.LogId 591 } 592 return 0 593 } 594 595 func (m *InitLogRequest) GetChargeTo() *ChargeTo { 596 if m != nil { 597 return m.ChargeTo 598 } 599 return nil 600 } 601 602 type InitLogResponse struct { 603 Created *SignedLogRoot `protobuf:"bytes,1,opt,name=created" json:"created,omitempty"` 604 } 605 606 func (m *InitLogResponse) Reset() { *m = InitLogResponse{} } 607 func (m *InitLogResponse) String() string { return proto.CompactTextString(m) } 608 func (*InitLogResponse) ProtoMessage() {} 609 func (*InitLogResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} } 610 611 func (m *InitLogResponse) GetCreated() *SignedLogRoot { 612 if m != nil { 613 return m.Created 614 } 615 return nil 616 } 617 618 type QueueLeavesRequest struct { 619 LogId int64 `protobuf:"varint,1,opt,name=log_id,json=logId" json:"log_id,omitempty"` 620 Leaves []*LogLeaf `protobuf:"bytes,2,rep,name=leaves" json:"leaves,omitempty"` 621 ChargeTo *ChargeTo `protobuf:"bytes,3,opt,name=charge_to,json=chargeTo" json:"charge_to,omitempty"` 622 } 623 624 func (m *QueueLeavesRequest) Reset() { *m = QueueLeavesRequest{} } 625 func (m *QueueLeavesRequest) String() string { return proto.CompactTextString(m) } 626 func (*QueueLeavesRequest) ProtoMessage() {} 627 func (*QueueLeavesRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{19} } 628 629 func (m *QueueLeavesRequest) GetLogId() int64 { 630 if m != nil { 631 return m.LogId 632 } 633 return 0 634 } 635 636 func (m *QueueLeavesRequest) GetLeaves() []*LogLeaf { 637 if m != nil { 638 return m.Leaves 639 } 640 return nil 641 } 642 643 func (m *QueueLeavesRequest) GetChargeTo() *ChargeTo { 644 if m != nil { 645 return m.ChargeTo 646 } 647 return nil 648 } 649 650 type QueueLeavesResponse struct { 651 // Same number and order as in the corresponding request. 652 QueuedLeaves []*QueuedLogLeaf `protobuf:"bytes,2,rep,name=queued_leaves,json=queuedLeaves" json:"queued_leaves,omitempty"` 653 } 654 655 func (m *QueueLeavesResponse) Reset() { *m = QueueLeavesResponse{} } 656 func (m *QueueLeavesResponse) String() string { return proto.CompactTextString(m) } 657 func (*QueueLeavesResponse) ProtoMessage() {} 658 func (*QueueLeavesResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{20} } 659 660 func (m *QueueLeavesResponse) GetQueuedLeaves() []*QueuedLogLeaf { 661 if m != nil { 662 return m.QueuedLeaves 663 } 664 return nil 665 } 666 667 type AddSequencedLeavesRequest struct { 668 LogId int64 `protobuf:"varint,1,opt,name=log_id,json=logId" json:"log_id,omitempty"` 669 Leaves []*LogLeaf `protobuf:"bytes,2,rep,name=leaves" json:"leaves,omitempty"` 670 ChargeTo *ChargeTo `protobuf:"bytes,4,opt,name=charge_to,json=chargeTo" json:"charge_to,omitempty"` 671 } 672 673 func (m *AddSequencedLeavesRequest) Reset() { *m = AddSequencedLeavesRequest{} } 674 func (m *AddSequencedLeavesRequest) String() string { return proto.CompactTextString(m) } 675 func (*AddSequencedLeavesRequest) ProtoMessage() {} 676 func (*AddSequencedLeavesRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{21} } 677 678 func (m *AddSequencedLeavesRequest) GetLogId() int64 { 679 if m != nil { 680 return m.LogId 681 } 682 return 0 683 } 684 685 func (m *AddSequencedLeavesRequest) GetLeaves() []*LogLeaf { 686 if m != nil { 687 return m.Leaves 688 } 689 return nil 690 } 691 692 func (m *AddSequencedLeavesRequest) GetChargeTo() *ChargeTo { 693 if m != nil { 694 return m.ChargeTo 695 } 696 return nil 697 } 698 699 type AddSequencedLeavesResponse struct { 700 // Same number and order as in the corresponding request. 701 Results []*QueuedLogLeaf `protobuf:"bytes,2,rep,name=results" json:"results,omitempty"` 702 } 703 704 func (m *AddSequencedLeavesResponse) Reset() { *m = AddSequencedLeavesResponse{} } 705 func (m *AddSequencedLeavesResponse) String() string { return proto.CompactTextString(m) } 706 func (*AddSequencedLeavesResponse) ProtoMessage() {} 707 func (*AddSequencedLeavesResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{22} } 708 709 func (m *AddSequencedLeavesResponse) GetResults() []*QueuedLogLeaf { 710 if m != nil { 711 return m.Results 712 } 713 return nil 714 } 715 716 type GetLeavesByIndexRequest struct { 717 LogId int64 `protobuf:"varint,1,opt,name=log_id,json=logId" json:"log_id,omitempty"` 718 LeafIndex []int64 `protobuf:"varint,2,rep,packed,name=leaf_index,json=leafIndex" json:"leaf_index,omitempty"` 719 ChargeTo *ChargeTo `protobuf:"bytes,5,opt,name=charge_to,json=chargeTo" json:"charge_to,omitempty"` 720 } 721 722 func (m *GetLeavesByIndexRequest) Reset() { *m = GetLeavesByIndexRequest{} } 723 func (m *GetLeavesByIndexRequest) String() string { return proto.CompactTextString(m) } 724 func (*GetLeavesByIndexRequest) ProtoMessage() {} 725 func (*GetLeavesByIndexRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{23} } 726 727 func (m *GetLeavesByIndexRequest) GetLogId() int64 { 728 if m != nil { 729 return m.LogId 730 } 731 return 0 732 } 733 734 func (m *GetLeavesByIndexRequest) GetLeafIndex() []int64 { 735 if m != nil { 736 return m.LeafIndex 737 } 738 return nil 739 } 740 741 func (m *GetLeavesByIndexRequest) GetChargeTo() *ChargeTo { 742 if m != nil { 743 return m.ChargeTo 744 } 745 return nil 746 } 747 748 type GetLeavesByIndexResponse struct { 749 // TODO(gbelvin) reply with error codes. Reuse QueuedLogLeaf? 750 Leaves []*LogLeaf `protobuf:"bytes,2,rep,name=leaves" json:"leaves,omitempty"` 751 SignedLogRoot *SignedLogRoot `protobuf:"bytes,3,opt,name=signed_log_root,json=signedLogRoot" json:"signed_log_root,omitempty"` 752 } 753 754 func (m *GetLeavesByIndexResponse) Reset() { *m = GetLeavesByIndexResponse{} } 755 func (m *GetLeavesByIndexResponse) String() string { return proto.CompactTextString(m) } 756 func (*GetLeavesByIndexResponse) ProtoMessage() {} 757 func (*GetLeavesByIndexResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{24} } 758 759 func (m *GetLeavesByIndexResponse) GetLeaves() []*LogLeaf { 760 if m != nil { 761 return m.Leaves 762 } 763 return nil 764 } 765 766 func (m *GetLeavesByIndexResponse) GetSignedLogRoot() *SignedLogRoot { 767 if m != nil { 768 return m.SignedLogRoot 769 } 770 return nil 771 } 772 773 type GetLeavesByRangeRequest struct { 774 LogId int64 `protobuf:"varint,1,opt,name=log_id,json=logId" json:"log_id,omitempty"` 775 StartIndex int64 `protobuf:"varint,2,opt,name=start_index,json=startIndex" json:"start_index,omitempty"` 776 Count int64 `protobuf:"varint,3,opt,name=count" json:"count,omitempty"` 777 ChargeTo *ChargeTo `protobuf:"bytes,4,opt,name=charge_to,json=chargeTo" json:"charge_to,omitempty"` 778 } 779 780 func (m *GetLeavesByRangeRequest) Reset() { *m = GetLeavesByRangeRequest{} } 781 func (m *GetLeavesByRangeRequest) String() string { return proto.CompactTextString(m) } 782 func (*GetLeavesByRangeRequest) ProtoMessage() {} 783 func (*GetLeavesByRangeRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{25} } 784 785 func (m *GetLeavesByRangeRequest) GetLogId() int64 { 786 if m != nil { 787 return m.LogId 788 } 789 return 0 790 } 791 792 func (m *GetLeavesByRangeRequest) GetStartIndex() int64 { 793 if m != nil { 794 return m.StartIndex 795 } 796 return 0 797 } 798 799 func (m *GetLeavesByRangeRequest) GetCount() int64 { 800 if m != nil { 801 return m.Count 802 } 803 return 0 804 } 805 806 func (m *GetLeavesByRangeRequest) GetChargeTo() *ChargeTo { 807 if m != nil { 808 return m.ChargeTo 809 } 810 return nil 811 } 812 813 type GetLeavesByRangeResponse struct { 814 // Returned log leaves starting from the `start_index` of the request, in 815 // order. There may be fewer than `request.count` leaves returned, if the 816 // requested range extended beyond the size of the tree or if the server opted 817 // to return fewer leaves than requested. 818 Leaves []*LogLeaf `protobuf:"bytes,1,rep,name=leaves" json:"leaves,omitempty"` 819 SignedLogRoot *SignedLogRoot `protobuf:"bytes,2,opt,name=signed_log_root,json=signedLogRoot" json:"signed_log_root,omitempty"` 820 } 821 822 func (m *GetLeavesByRangeResponse) Reset() { *m = GetLeavesByRangeResponse{} } 823 func (m *GetLeavesByRangeResponse) String() string { return proto.CompactTextString(m) } 824 func (*GetLeavesByRangeResponse) ProtoMessage() {} 825 func (*GetLeavesByRangeResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{26} } 826 827 func (m *GetLeavesByRangeResponse) GetLeaves() []*LogLeaf { 828 if m != nil { 829 return m.Leaves 830 } 831 return nil 832 } 833 834 func (m *GetLeavesByRangeResponse) GetSignedLogRoot() *SignedLogRoot { 835 if m != nil { 836 return m.SignedLogRoot 837 } 838 return nil 839 } 840 841 type GetLeavesByHashRequest struct { 842 LogId int64 `protobuf:"varint,1,opt,name=log_id,json=logId" json:"log_id,omitempty"` 843 LeafHash [][]byte `protobuf:"bytes,2,rep,name=leaf_hash,json=leafHash,proto3" json:"leaf_hash,omitempty"` 844 OrderBySequence bool `protobuf:"varint,3,opt,name=order_by_sequence,json=orderBySequence" json:"order_by_sequence,omitempty"` 845 ChargeTo *ChargeTo `protobuf:"bytes,5,opt,name=charge_to,json=chargeTo" json:"charge_to,omitempty"` 846 } 847 848 func (m *GetLeavesByHashRequest) Reset() { *m = GetLeavesByHashRequest{} } 849 func (m *GetLeavesByHashRequest) String() string { return proto.CompactTextString(m) } 850 func (*GetLeavesByHashRequest) ProtoMessage() {} 851 func (*GetLeavesByHashRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{27} } 852 853 func (m *GetLeavesByHashRequest) GetLogId() int64 { 854 if m != nil { 855 return m.LogId 856 } 857 return 0 858 } 859 860 func (m *GetLeavesByHashRequest) GetLeafHash() [][]byte { 861 if m != nil { 862 return m.LeafHash 863 } 864 return nil 865 } 866 867 func (m *GetLeavesByHashRequest) GetOrderBySequence() bool { 868 if m != nil { 869 return m.OrderBySequence 870 } 871 return false 872 } 873 874 func (m *GetLeavesByHashRequest) GetChargeTo() *ChargeTo { 875 if m != nil { 876 return m.ChargeTo 877 } 878 return nil 879 } 880 881 type GetLeavesByHashResponse struct { 882 // TODO(gbelvin) reply with error codes. Reuse QueuedLogLeaf? 883 Leaves []*LogLeaf `protobuf:"bytes,2,rep,name=leaves" json:"leaves,omitempty"` 884 SignedLogRoot *SignedLogRoot `protobuf:"bytes,3,opt,name=signed_log_root,json=signedLogRoot" json:"signed_log_root,omitempty"` 885 } 886 887 func (m *GetLeavesByHashResponse) Reset() { *m = GetLeavesByHashResponse{} } 888 func (m *GetLeavesByHashResponse) String() string { return proto.CompactTextString(m) } 889 func (*GetLeavesByHashResponse) ProtoMessage() {} 890 func (*GetLeavesByHashResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{28} } 891 892 func (m *GetLeavesByHashResponse) GetLeaves() []*LogLeaf { 893 if m != nil { 894 return m.Leaves 895 } 896 return nil 897 } 898 899 func (m *GetLeavesByHashResponse) GetSignedLogRoot() *SignedLogRoot { 900 if m != nil { 901 return m.SignedLogRoot 902 } 903 return nil 904 } 905 906 // A result of submitting an entry to the log. Output only. 907 // TODO(pavelkalinnikov): Consider renaming it to AddLogLeafResult or the like. 908 type QueuedLogLeaf struct { 909 // The leaf as it was stored by Trillian. Empty unless `status.code` is: 910 // - `google.rpc.OK`: the `leaf` data is the same as in the request. 911 // - `google.rpc.ALREADY_EXISTS` or 'google.rpc.FAILED_PRECONDITION`: the 912 // `leaf` is the conflicting one already in the log. 913 Leaf *LogLeaf `protobuf:"bytes,1,opt,name=leaf" json:"leaf,omitempty"` 914 // The status of adding the leaf. 915 // - `google.rpc.OK`: successfully added. 916 // - `google.rpc.ALREADY_EXISTS`: the leaf is a duplicate of an already 917 // existing one. Either `leaf_identity_hash` is the same in the `LOG` 918 // mode, or `leaf_index` in the `PREORDERED_LOG`. 919 // - `google.rpc.FAILED_PRECONDITION`: A conflicting entry is already 920 // present in the log, e.g., same `leaf_index` but different `leaf_data`. 921 Status *google_rpc.Status `protobuf:"bytes,2,opt,name=status" json:"status,omitempty"` 922 } 923 924 func (m *QueuedLogLeaf) Reset() { *m = QueuedLogLeaf{} } 925 func (m *QueuedLogLeaf) String() string { return proto.CompactTextString(m) } 926 func (*QueuedLogLeaf) ProtoMessage() {} 927 func (*QueuedLogLeaf) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{29} } 928 929 func (m *QueuedLogLeaf) GetLeaf() *LogLeaf { 930 if m != nil { 931 return m.Leaf 932 } 933 return nil 934 } 935 936 func (m *QueuedLogLeaf) GetStatus() *google_rpc.Status { 937 if m != nil { 938 return m.Status 939 } 940 return nil 941 } 942 943 // A leaf of the log's Merkle tree, corresponds to a single log entry. Each leaf 944 // has a unique `leaf_index` in the scope of this tree. 945 type LogLeaf struct { 946 // Output only. The hash over `leaf_data`. 947 MerkleLeafHash []byte `protobuf:"bytes,1,opt,name=merkle_leaf_hash,json=merkleLeafHash,proto3" json:"merkle_leaf_hash,omitempty"` 948 // Required. The arbitrary data associated with this log entry. Validity of 949 // this field is governed by the call site (personality). 950 LeafValue []byte `protobuf:"bytes,2,opt,name=leaf_value,json=leafValue,proto3" json:"leaf_value,omitempty"` 951 // The arbitrary metadata, e.g., a timestamp. 952 ExtraData []byte `protobuf:"bytes,3,opt,name=extra_data,json=extraData,proto3" json:"extra_data,omitempty"` 953 // Output only in `LOG` mode. Required in `PREORDERED_LOG` mode. 954 // The index of the leaf in the Merkle tree, i.e., the position of the 955 // corresponding entry in the log. For normal logs this value will be 956 // assigned by the LogSigner. 957 LeafIndex int64 `protobuf:"varint,4,opt,name=leaf_index,json=leafIndex" json:"leaf_index,omitempty"` 958 // The hash over the identity of this leaf. If empty, assumed to be the same 959 // as `merkle_leaf_hash`. It is a mechanism for the personality to provide a 960 // hint to Trillian that two leaves should be considered "duplicates" even 961 // though their `leaf_value`s differ. 962 // 963 // E.g., in a CT personality multiple `add-chain` calls for an identical 964 // certificate would produce differing `leaf_data` bytes (due to the 965 // presence of SCT elements), with just this information Trillian would be 966 // unable to determine that. Within the context of the CT personality, these 967 // entries are dupes, so it sets `leaf_identity_hash` to `H(cert)`, which 968 // allows Trillian to detect the duplicates. 969 // 970 // Continuing the CT example, for a CT mirror personality (which must allow 971 // dupes since the source log could contain them), the part of the 972 // personality which fetches and submits the entries might set 973 // `leaf_identity_hash` to `H(leaf_index||cert)`. 974 // TODO(pavelkalinnikov): Consider instead using `H(cert)` and allowing 975 // identity hash dupes in `PREORDERED_LOG` mode, for it can later be 976 // upgraded to `LOG` which will need to correctly detect duplicates with 977 // older entries when new ones get queued. 978 LeafIdentityHash []byte `protobuf:"bytes,5,opt,name=leaf_identity_hash,json=leafIdentityHash,proto3" json:"leaf_identity_hash,omitempty"` 979 // Output only. The time at which this leaf was passed to `QueueLeaves`. 980 // This value will be determined and set by the LogServer. Equals zero if 981 // the entry was submitted without queuing. 982 QueueTimestamp *google_protobuf1.Timestamp `protobuf:"bytes,6,opt,name=queue_timestamp,json=queueTimestamp" json:"queue_timestamp,omitempty"` 983 // Output only. The time at which this leaf was integrated into the tree. 984 // This value will be determined and set by the LogSigner. 985 IntegrateTimestamp *google_protobuf1.Timestamp `protobuf:"bytes,7,opt,name=integrate_timestamp,json=integrateTimestamp" json:"integrate_timestamp,omitempty"` 986 } 987 988 func (m *LogLeaf) Reset() { *m = LogLeaf{} } 989 func (m *LogLeaf) String() string { return proto.CompactTextString(m) } 990 func (*LogLeaf) ProtoMessage() {} 991 func (*LogLeaf) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{30} } 992 993 func (m *LogLeaf) GetMerkleLeafHash() []byte { 994 if m != nil { 995 return m.MerkleLeafHash 996 } 997 return nil 998 } 999 1000 func (m *LogLeaf) GetLeafValue() []byte { 1001 if m != nil { 1002 return m.LeafValue 1003 } 1004 return nil 1005 } 1006 1007 func (m *LogLeaf) GetExtraData() []byte { 1008 if m != nil { 1009 return m.ExtraData 1010 } 1011 return nil 1012 } 1013 1014 func (m *LogLeaf) GetLeafIndex() int64 { 1015 if m != nil { 1016 return m.LeafIndex 1017 } 1018 return 0 1019 } 1020 1021 func (m *LogLeaf) GetLeafIdentityHash() []byte { 1022 if m != nil { 1023 return m.LeafIdentityHash 1024 } 1025 return nil 1026 } 1027 1028 func (m *LogLeaf) GetQueueTimestamp() *google_protobuf1.Timestamp { 1029 if m != nil { 1030 return m.QueueTimestamp 1031 } 1032 return nil 1033 } 1034 1035 func (m *LogLeaf) GetIntegrateTimestamp() *google_protobuf1.Timestamp { 1036 if m != nil { 1037 return m.IntegrateTimestamp 1038 } 1039 return nil 1040 } 1041 1042 // A consistency or inclusion proof for a Merkle tree. Output only. 1043 type Proof struct { 1044 LeafIndex int64 `protobuf:"varint,1,opt,name=leaf_index,json=leafIndex" json:"leaf_index,omitempty"` 1045 Hashes [][]byte `protobuf:"bytes,3,rep,name=hashes,proto3" json:"hashes,omitempty"` 1046 } 1047 1048 func (m *Proof) Reset() { *m = Proof{} } 1049 func (m *Proof) String() string { return proto.CompactTextString(m) } 1050 func (*Proof) ProtoMessage() {} 1051 func (*Proof) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{31} } 1052 1053 func (m *Proof) GetLeafIndex() int64 { 1054 if m != nil { 1055 return m.LeafIndex 1056 } 1057 return 0 1058 } 1059 1060 func (m *Proof) GetHashes() [][]byte { 1061 if m != nil { 1062 return m.Hashes 1063 } 1064 return nil 1065 } 1066 1067 func init() { 1068 proto.RegisterType((*ChargeTo)(nil), "trillian.ChargeTo") 1069 proto.RegisterType((*QueueLeafRequest)(nil), "trillian.QueueLeafRequest") 1070 proto.RegisterType((*QueueLeafResponse)(nil), "trillian.QueueLeafResponse") 1071 proto.RegisterType((*AddSequencedLeafRequest)(nil), "trillian.AddSequencedLeafRequest") 1072 proto.RegisterType((*AddSequencedLeafResponse)(nil), "trillian.AddSequencedLeafResponse") 1073 proto.RegisterType((*GetInclusionProofRequest)(nil), "trillian.GetInclusionProofRequest") 1074 proto.RegisterType((*GetInclusionProofResponse)(nil), "trillian.GetInclusionProofResponse") 1075 proto.RegisterType((*GetInclusionProofByHashRequest)(nil), "trillian.GetInclusionProofByHashRequest") 1076 proto.RegisterType((*GetInclusionProofByHashResponse)(nil), "trillian.GetInclusionProofByHashResponse") 1077 proto.RegisterType((*GetConsistencyProofRequest)(nil), "trillian.GetConsistencyProofRequest") 1078 proto.RegisterType((*GetConsistencyProofResponse)(nil), "trillian.GetConsistencyProofResponse") 1079 proto.RegisterType((*GetLatestSignedLogRootRequest)(nil), "trillian.GetLatestSignedLogRootRequest") 1080 proto.RegisterType((*GetLatestSignedLogRootResponse)(nil), "trillian.GetLatestSignedLogRootResponse") 1081 proto.RegisterType((*GetSequencedLeafCountRequest)(nil), "trillian.GetSequencedLeafCountRequest") 1082 proto.RegisterType((*GetSequencedLeafCountResponse)(nil), "trillian.GetSequencedLeafCountResponse") 1083 proto.RegisterType((*GetEntryAndProofRequest)(nil), "trillian.GetEntryAndProofRequest") 1084 proto.RegisterType((*GetEntryAndProofResponse)(nil), "trillian.GetEntryAndProofResponse") 1085 proto.RegisterType((*InitLogRequest)(nil), "trillian.InitLogRequest") 1086 proto.RegisterType((*InitLogResponse)(nil), "trillian.InitLogResponse") 1087 proto.RegisterType((*QueueLeavesRequest)(nil), "trillian.QueueLeavesRequest") 1088 proto.RegisterType((*QueueLeavesResponse)(nil), "trillian.QueueLeavesResponse") 1089 proto.RegisterType((*AddSequencedLeavesRequest)(nil), "trillian.AddSequencedLeavesRequest") 1090 proto.RegisterType((*AddSequencedLeavesResponse)(nil), "trillian.AddSequencedLeavesResponse") 1091 proto.RegisterType((*GetLeavesByIndexRequest)(nil), "trillian.GetLeavesByIndexRequest") 1092 proto.RegisterType((*GetLeavesByIndexResponse)(nil), "trillian.GetLeavesByIndexResponse") 1093 proto.RegisterType((*GetLeavesByRangeRequest)(nil), "trillian.GetLeavesByRangeRequest") 1094 proto.RegisterType((*GetLeavesByRangeResponse)(nil), "trillian.GetLeavesByRangeResponse") 1095 proto.RegisterType((*GetLeavesByHashRequest)(nil), "trillian.GetLeavesByHashRequest") 1096 proto.RegisterType((*GetLeavesByHashResponse)(nil), "trillian.GetLeavesByHashResponse") 1097 proto.RegisterType((*QueuedLogLeaf)(nil), "trillian.QueuedLogLeaf") 1098 proto.RegisterType((*LogLeaf)(nil), "trillian.LogLeaf") 1099 proto.RegisterType((*Proof)(nil), "trillian.Proof") 1100 } 1101 1102 // Reference imports to suppress errors if they are not otherwise used. 1103 var _ context.Context 1104 var _ grpc.ClientConn 1105 1106 // This is a compile-time assertion to ensure that this generated file 1107 // is compatible with the grpc package it is being compiled against. 1108 const _ = grpc.SupportPackageIsVersion4 1109 1110 // Client API for TrillianLog service 1111 1112 type TrillianLogClient interface { 1113 // Adds a single leaf to the queue. 1114 QueueLeaf(ctx context.Context, in *QueueLeafRequest, opts ...grpc.CallOption) (*QueueLeafResponse, error) 1115 // Adds a single leaf with an assigned sequence number. 1116 // Warning: This RPC is under development, don't use it. 1117 AddSequencedLeaf(ctx context.Context, in *AddSequencedLeafRequest, opts ...grpc.CallOption) (*AddSequencedLeafResponse, error) 1118 // Returns inclusion proof for a leaf with a given index in a given tree. 1119 GetInclusionProof(ctx context.Context, in *GetInclusionProofRequest, opts ...grpc.CallOption) (*GetInclusionProofResponse, error) 1120 // Returns inclusion proof for a leaf with a given identity hash in a given 1121 // tree. 1122 GetInclusionProofByHash(ctx context.Context, in *GetInclusionProofByHashRequest, opts ...grpc.CallOption) (*GetInclusionProofByHashResponse, error) 1123 // Returns consistency proof between two versions of a given tree. 1124 GetConsistencyProof(ctx context.Context, in *GetConsistencyProofRequest, opts ...grpc.CallOption) (*GetConsistencyProofResponse, error) 1125 // Returns the latest signed log root for a given tree. Corresponds to the 1126 // ReadOnlyLogTreeTX.LatestSignedLogRoot storage interface. 1127 GetLatestSignedLogRoot(ctx context.Context, in *GetLatestSignedLogRootRequest, opts ...grpc.CallOption) (*GetLatestSignedLogRootResponse, error) 1128 // Returns the total number of leaves that have been integrated into the 1129 // given tree. Corresponds to the ReadOnlyLogTreeTX.GetSequencedLeafCount 1130 // storage interface. 1131 // DO NOT USE - FOR DEBUGGING/TEST ONLY 1132 GetSequencedLeafCount(ctx context.Context, in *GetSequencedLeafCountRequest, opts ...grpc.CallOption) (*GetSequencedLeafCountResponse, error) 1133 // Returns log entry and the corresponding inclusion proof for a given leaf 1134 // index in a given tree. If the requested tree is unavailable but the leaf is in scope 1135 // for the current tree, return a proof in that tree instead. 1136 GetEntryAndProof(ctx context.Context, in *GetEntryAndProofRequest, opts ...grpc.CallOption) (*GetEntryAndProofResponse, error) 1137 InitLog(ctx context.Context, in *InitLogRequest, opts ...grpc.CallOption) (*InitLogResponse, error) 1138 // Adds a batch of leaves to the queue. 1139 QueueLeaves(ctx context.Context, in *QueueLeavesRequest, opts ...grpc.CallOption) (*QueueLeavesResponse, error) 1140 // Stores leaves from the provided batch and associates them with the log 1141 // positions according to the `LeafIndex` field. The indices must be 1142 // contiguous. 1143 // 1144 // Warning: This RPC is under development, don't use it. 1145 AddSequencedLeaves(ctx context.Context, in *AddSequencedLeavesRequest, opts ...grpc.CallOption) (*AddSequencedLeavesResponse, error) 1146 // Returns a batch of leaves located in the provided positions. 1147 GetLeavesByIndex(ctx context.Context, in *GetLeavesByIndexRequest, opts ...grpc.CallOption) (*GetLeavesByIndexResponse, error) 1148 // Returns a batch of leaves in a sequential range. 1149 GetLeavesByRange(ctx context.Context, in *GetLeavesByRangeRequest, opts ...grpc.CallOption) (*GetLeavesByRangeResponse, error) 1150 // Returns a batch of leaves by their `merkle_leaf_hash` values. 1151 GetLeavesByHash(ctx context.Context, in *GetLeavesByHashRequest, opts ...grpc.CallOption) (*GetLeavesByHashResponse, error) 1152 } 1153 1154 type trillianLogClient struct { 1155 cc *grpc.ClientConn 1156 } 1157 1158 func NewTrillianLogClient(cc *grpc.ClientConn) TrillianLogClient { 1159 return &trillianLogClient{cc} 1160 } 1161 1162 func (c *trillianLogClient) QueueLeaf(ctx context.Context, in *QueueLeafRequest, opts ...grpc.CallOption) (*QueueLeafResponse, error) { 1163 out := new(QueueLeafResponse) 1164 err := grpc.Invoke(ctx, "/trillian.TrillianLog/QueueLeaf", in, out, c.cc, opts...) 1165 if err != nil { 1166 return nil, err 1167 } 1168 return out, nil 1169 } 1170 1171 func (c *trillianLogClient) AddSequencedLeaf(ctx context.Context, in *AddSequencedLeafRequest, opts ...grpc.CallOption) (*AddSequencedLeafResponse, error) { 1172 out := new(AddSequencedLeafResponse) 1173 err := grpc.Invoke(ctx, "/trillian.TrillianLog/AddSequencedLeaf", in, out, c.cc, opts...) 1174 if err != nil { 1175 return nil, err 1176 } 1177 return out, nil 1178 } 1179 1180 func (c *trillianLogClient) GetInclusionProof(ctx context.Context, in *GetInclusionProofRequest, opts ...grpc.CallOption) (*GetInclusionProofResponse, error) { 1181 out := new(GetInclusionProofResponse) 1182 err := grpc.Invoke(ctx, "/trillian.TrillianLog/GetInclusionProof", in, out, c.cc, opts...) 1183 if err != nil { 1184 return nil, err 1185 } 1186 return out, nil 1187 } 1188 1189 func (c *trillianLogClient) GetInclusionProofByHash(ctx context.Context, in *GetInclusionProofByHashRequest, opts ...grpc.CallOption) (*GetInclusionProofByHashResponse, error) { 1190 out := new(GetInclusionProofByHashResponse) 1191 err := grpc.Invoke(ctx, "/trillian.TrillianLog/GetInclusionProofByHash", in, out, c.cc, opts...) 1192 if err != nil { 1193 return nil, err 1194 } 1195 return out, nil 1196 } 1197 1198 func (c *trillianLogClient) GetConsistencyProof(ctx context.Context, in *GetConsistencyProofRequest, opts ...grpc.CallOption) (*GetConsistencyProofResponse, error) { 1199 out := new(GetConsistencyProofResponse) 1200 err := grpc.Invoke(ctx, "/trillian.TrillianLog/GetConsistencyProof", in, out, c.cc, opts...) 1201 if err != nil { 1202 return nil, err 1203 } 1204 return out, nil 1205 } 1206 1207 func (c *trillianLogClient) GetLatestSignedLogRoot(ctx context.Context, in *GetLatestSignedLogRootRequest, opts ...grpc.CallOption) (*GetLatestSignedLogRootResponse, error) { 1208 out := new(GetLatestSignedLogRootResponse) 1209 err := grpc.Invoke(ctx, "/trillian.TrillianLog/GetLatestSignedLogRoot", in, out, c.cc, opts...) 1210 if err != nil { 1211 return nil, err 1212 } 1213 return out, nil 1214 } 1215 1216 func (c *trillianLogClient) GetSequencedLeafCount(ctx context.Context, in *GetSequencedLeafCountRequest, opts ...grpc.CallOption) (*GetSequencedLeafCountResponse, error) { 1217 out := new(GetSequencedLeafCountResponse) 1218 err := grpc.Invoke(ctx, "/trillian.TrillianLog/GetSequencedLeafCount", in, out, c.cc, opts...) 1219 if err != nil { 1220 return nil, err 1221 } 1222 return out, nil 1223 } 1224 1225 func (c *trillianLogClient) GetEntryAndProof(ctx context.Context, in *GetEntryAndProofRequest, opts ...grpc.CallOption) (*GetEntryAndProofResponse, error) { 1226 out := new(GetEntryAndProofResponse) 1227 err := grpc.Invoke(ctx, "/trillian.TrillianLog/GetEntryAndProof", in, out, c.cc, opts...) 1228 if err != nil { 1229 return nil, err 1230 } 1231 return out, nil 1232 } 1233 1234 func (c *trillianLogClient) InitLog(ctx context.Context, in *InitLogRequest, opts ...grpc.CallOption) (*InitLogResponse, error) { 1235 out := new(InitLogResponse) 1236 err := grpc.Invoke(ctx, "/trillian.TrillianLog/InitLog", in, out, c.cc, opts...) 1237 if err != nil { 1238 return nil, err 1239 } 1240 return out, nil 1241 } 1242 1243 func (c *trillianLogClient) QueueLeaves(ctx context.Context, in *QueueLeavesRequest, opts ...grpc.CallOption) (*QueueLeavesResponse, error) { 1244 out := new(QueueLeavesResponse) 1245 err := grpc.Invoke(ctx, "/trillian.TrillianLog/QueueLeaves", in, out, c.cc, opts...) 1246 if err != nil { 1247 return nil, err 1248 } 1249 return out, nil 1250 } 1251 1252 func (c *trillianLogClient) AddSequencedLeaves(ctx context.Context, in *AddSequencedLeavesRequest, opts ...grpc.CallOption) (*AddSequencedLeavesResponse, error) { 1253 out := new(AddSequencedLeavesResponse) 1254 err := grpc.Invoke(ctx, "/trillian.TrillianLog/AddSequencedLeaves", in, out, c.cc, opts...) 1255 if err != nil { 1256 return nil, err 1257 } 1258 return out, nil 1259 } 1260 1261 func (c *trillianLogClient) GetLeavesByIndex(ctx context.Context, in *GetLeavesByIndexRequest, opts ...grpc.CallOption) (*GetLeavesByIndexResponse, error) { 1262 out := new(GetLeavesByIndexResponse) 1263 err := grpc.Invoke(ctx, "/trillian.TrillianLog/GetLeavesByIndex", in, out, c.cc, opts...) 1264 if err != nil { 1265 return nil, err 1266 } 1267 return out, nil 1268 } 1269 1270 func (c *trillianLogClient) GetLeavesByRange(ctx context.Context, in *GetLeavesByRangeRequest, opts ...grpc.CallOption) (*GetLeavesByRangeResponse, error) { 1271 out := new(GetLeavesByRangeResponse) 1272 err := grpc.Invoke(ctx, "/trillian.TrillianLog/GetLeavesByRange", in, out, c.cc, opts...) 1273 if err != nil { 1274 return nil, err 1275 } 1276 return out, nil 1277 } 1278 1279 func (c *trillianLogClient) GetLeavesByHash(ctx context.Context, in *GetLeavesByHashRequest, opts ...grpc.CallOption) (*GetLeavesByHashResponse, error) { 1280 out := new(GetLeavesByHashResponse) 1281 err := grpc.Invoke(ctx, "/trillian.TrillianLog/GetLeavesByHash", in, out, c.cc, opts...) 1282 if err != nil { 1283 return nil, err 1284 } 1285 return out, nil 1286 } 1287 1288 // Server API for TrillianLog service 1289 1290 type TrillianLogServer interface { 1291 // Adds a single leaf to the queue. 1292 QueueLeaf(context.Context, *QueueLeafRequest) (*QueueLeafResponse, error) 1293 // Adds a single leaf with an assigned sequence number. 1294 // Warning: This RPC is under development, don't use it. 1295 AddSequencedLeaf(context.Context, *AddSequencedLeafRequest) (*AddSequencedLeafResponse, error) 1296 // Returns inclusion proof for a leaf with a given index in a given tree. 1297 GetInclusionProof(context.Context, *GetInclusionProofRequest) (*GetInclusionProofResponse, error) 1298 // Returns inclusion proof for a leaf with a given identity hash in a given 1299 // tree. 1300 GetInclusionProofByHash(context.Context, *GetInclusionProofByHashRequest) (*GetInclusionProofByHashResponse, error) 1301 // Returns consistency proof between two versions of a given tree. 1302 GetConsistencyProof(context.Context, *GetConsistencyProofRequest) (*GetConsistencyProofResponse, error) 1303 // Returns the latest signed log root for a given tree. Corresponds to the 1304 // ReadOnlyLogTreeTX.LatestSignedLogRoot storage interface. 1305 GetLatestSignedLogRoot(context.Context, *GetLatestSignedLogRootRequest) (*GetLatestSignedLogRootResponse, error) 1306 // Returns the total number of leaves that have been integrated into the 1307 // given tree. Corresponds to the ReadOnlyLogTreeTX.GetSequencedLeafCount 1308 // storage interface. 1309 // DO NOT USE - FOR DEBUGGING/TEST ONLY 1310 GetSequencedLeafCount(context.Context, *GetSequencedLeafCountRequest) (*GetSequencedLeafCountResponse, error) 1311 // Returns log entry and the corresponding inclusion proof for a given leaf 1312 // index in a given tree. If the requested tree is unavailable but the leaf is in scope 1313 // for the current tree, return a proof in that tree instead. 1314 GetEntryAndProof(context.Context, *GetEntryAndProofRequest) (*GetEntryAndProofResponse, error) 1315 InitLog(context.Context, *InitLogRequest) (*InitLogResponse, error) 1316 // Adds a batch of leaves to the queue. 1317 QueueLeaves(context.Context, *QueueLeavesRequest) (*QueueLeavesResponse, error) 1318 // Stores leaves from the provided batch and associates them with the log 1319 // positions according to the `LeafIndex` field. The indices must be 1320 // contiguous. 1321 // 1322 // Warning: This RPC is under development, don't use it. 1323 AddSequencedLeaves(context.Context, *AddSequencedLeavesRequest) (*AddSequencedLeavesResponse, error) 1324 // Returns a batch of leaves located in the provided positions. 1325 GetLeavesByIndex(context.Context, *GetLeavesByIndexRequest) (*GetLeavesByIndexResponse, error) 1326 // Returns a batch of leaves in a sequential range. 1327 GetLeavesByRange(context.Context, *GetLeavesByRangeRequest) (*GetLeavesByRangeResponse, error) 1328 // Returns a batch of leaves by their `merkle_leaf_hash` values. 1329 GetLeavesByHash(context.Context, *GetLeavesByHashRequest) (*GetLeavesByHashResponse, error) 1330 } 1331 1332 func RegisterTrillianLogServer(s *grpc.Server, srv TrillianLogServer) { 1333 s.RegisterService(&_TrillianLog_serviceDesc, srv) 1334 } 1335 1336 func _TrillianLog_QueueLeaf_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1337 in := new(QueueLeafRequest) 1338 if err := dec(in); err != nil { 1339 return nil, err 1340 } 1341 if interceptor == nil { 1342 return srv.(TrillianLogServer).QueueLeaf(ctx, in) 1343 } 1344 info := &grpc.UnaryServerInfo{ 1345 Server: srv, 1346 FullMethod: "/trillian.TrillianLog/QueueLeaf", 1347 } 1348 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1349 return srv.(TrillianLogServer).QueueLeaf(ctx, req.(*QueueLeafRequest)) 1350 } 1351 return interceptor(ctx, in, info, handler) 1352 } 1353 1354 func _TrillianLog_AddSequencedLeaf_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1355 in := new(AddSequencedLeafRequest) 1356 if err := dec(in); err != nil { 1357 return nil, err 1358 } 1359 if interceptor == nil { 1360 return srv.(TrillianLogServer).AddSequencedLeaf(ctx, in) 1361 } 1362 info := &grpc.UnaryServerInfo{ 1363 Server: srv, 1364 FullMethod: "/trillian.TrillianLog/AddSequencedLeaf", 1365 } 1366 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1367 return srv.(TrillianLogServer).AddSequencedLeaf(ctx, req.(*AddSequencedLeafRequest)) 1368 } 1369 return interceptor(ctx, in, info, handler) 1370 } 1371 1372 func _TrillianLog_GetInclusionProof_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1373 in := new(GetInclusionProofRequest) 1374 if err := dec(in); err != nil { 1375 return nil, err 1376 } 1377 if interceptor == nil { 1378 return srv.(TrillianLogServer).GetInclusionProof(ctx, in) 1379 } 1380 info := &grpc.UnaryServerInfo{ 1381 Server: srv, 1382 FullMethod: "/trillian.TrillianLog/GetInclusionProof", 1383 } 1384 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1385 return srv.(TrillianLogServer).GetInclusionProof(ctx, req.(*GetInclusionProofRequest)) 1386 } 1387 return interceptor(ctx, in, info, handler) 1388 } 1389 1390 func _TrillianLog_GetInclusionProofByHash_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1391 in := new(GetInclusionProofByHashRequest) 1392 if err := dec(in); err != nil { 1393 return nil, err 1394 } 1395 if interceptor == nil { 1396 return srv.(TrillianLogServer).GetInclusionProofByHash(ctx, in) 1397 } 1398 info := &grpc.UnaryServerInfo{ 1399 Server: srv, 1400 FullMethod: "/trillian.TrillianLog/GetInclusionProofByHash", 1401 } 1402 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1403 return srv.(TrillianLogServer).GetInclusionProofByHash(ctx, req.(*GetInclusionProofByHashRequest)) 1404 } 1405 return interceptor(ctx, in, info, handler) 1406 } 1407 1408 func _TrillianLog_GetConsistencyProof_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1409 in := new(GetConsistencyProofRequest) 1410 if err := dec(in); err != nil { 1411 return nil, err 1412 } 1413 if interceptor == nil { 1414 return srv.(TrillianLogServer).GetConsistencyProof(ctx, in) 1415 } 1416 info := &grpc.UnaryServerInfo{ 1417 Server: srv, 1418 FullMethod: "/trillian.TrillianLog/GetConsistencyProof", 1419 } 1420 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1421 return srv.(TrillianLogServer).GetConsistencyProof(ctx, req.(*GetConsistencyProofRequest)) 1422 } 1423 return interceptor(ctx, in, info, handler) 1424 } 1425 1426 func _TrillianLog_GetLatestSignedLogRoot_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1427 in := new(GetLatestSignedLogRootRequest) 1428 if err := dec(in); err != nil { 1429 return nil, err 1430 } 1431 if interceptor == nil { 1432 return srv.(TrillianLogServer).GetLatestSignedLogRoot(ctx, in) 1433 } 1434 info := &grpc.UnaryServerInfo{ 1435 Server: srv, 1436 FullMethod: "/trillian.TrillianLog/GetLatestSignedLogRoot", 1437 } 1438 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1439 return srv.(TrillianLogServer).GetLatestSignedLogRoot(ctx, req.(*GetLatestSignedLogRootRequest)) 1440 } 1441 return interceptor(ctx, in, info, handler) 1442 } 1443 1444 func _TrillianLog_GetSequencedLeafCount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1445 in := new(GetSequencedLeafCountRequest) 1446 if err := dec(in); err != nil { 1447 return nil, err 1448 } 1449 if interceptor == nil { 1450 return srv.(TrillianLogServer).GetSequencedLeafCount(ctx, in) 1451 } 1452 info := &grpc.UnaryServerInfo{ 1453 Server: srv, 1454 FullMethod: "/trillian.TrillianLog/GetSequencedLeafCount", 1455 } 1456 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1457 return srv.(TrillianLogServer).GetSequencedLeafCount(ctx, req.(*GetSequencedLeafCountRequest)) 1458 } 1459 return interceptor(ctx, in, info, handler) 1460 } 1461 1462 func _TrillianLog_GetEntryAndProof_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1463 in := new(GetEntryAndProofRequest) 1464 if err := dec(in); err != nil { 1465 return nil, err 1466 } 1467 if interceptor == nil { 1468 return srv.(TrillianLogServer).GetEntryAndProof(ctx, in) 1469 } 1470 info := &grpc.UnaryServerInfo{ 1471 Server: srv, 1472 FullMethod: "/trillian.TrillianLog/GetEntryAndProof", 1473 } 1474 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1475 return srv.(TrillianLogServer).GetEntryAndProof(ctx, req.(*GetEntryAndProofRequest)) 1476 } 1477 return interceptor(ctx, in, info, handler) 1478 } 1479 1480 func _TrillianLog_InitLog_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1481 in := new(InitLogRequest) 1482 if err := dec(in); err != nil { 1483 return nil, err 1484 } 1485 if interceptor == nil { 1486 return srv.(TrillianLogServer).InitLog(ctx, in) 1487 } 1488 info := &grpc.UnaryServerInfo{ 1489 Server: srv, 1490 FullMethod: "/trillian.TrillianLog/InitLog", 1491 } 1492 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1493 return srv.(TrillianLogServer).InitLog(ctx, req.(*InitLogRequest)) 1494 } 1495 return interceptor(ctx, in, info, handler) 1496 } 1497 1498 func _TrillianLog_QueueLeaves_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1499 in := new(QueueLeavesRequest) 1500 if err := dec(in); err != nil { 1501 return nil, err 1502 } 1503 if interceptor == nil { 1504 return srv.(TrillianLogServer).QueueLeaves(ctx, in) 1505 } 1506 info := &grpc.UnaryServerInfo{ 1507 Server: srv, 1508 FullMethod: "/trillian.TrillianLog/QueueLeaves", 1509 } 1510 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1511 return srv.(TrillianLogServer).QueueLeaves(ctx, req.(*QueueLeavesRequest)) 1512 } 1513 return interceptor(ctx, in, info, handler) 1514 } 1515 1516 func _TrillianLog_AddSequencedLeaves_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1517 in := new(AddSequencedLeavesRequest) 1518 if err := dec(in); err != nil { 1519 return nil, err 1520 } 1521 if interceptor == nil { 1522 return srv.(TrillianLogServer).AddSequencedLeaves(ctx, in) 1523 } 1524 info := &grpc.UnaryServerInfo{ 1525 Server: srv, 1526 FullMethod: "/trillian.TrillianLog/AddSequencedLeaves", 1527 } 1528 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1529 return srv.(TrillianLogServer).AddSequencedLeaves(ctx, req.(*AddSequencedLeavesRequest)) 1530 } 1531 return interceptor(ctx, in, info, handler) 1532 } 1533 1534 func _TrillianLog_GetLeavesByIndex_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1535 in := new(GetLeavesByIndexRequest) 1536 if err := dec(in); err != nil { 1537 return nil, err 1538 } 1539 if interceptor == nil { 1540 return srv.(TrillianLogServer).GetLeavesByIndex(ctx, in) 1541 } 1542 info := &grpc.UnaryServerInfo{ 1543 Server: srv, 1544 FullMethod: "/trillian.TrillianLog/GetLeavesByIndex", 1545 } 1546 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1547 return srv.(TrillianLogServer).GetLeavesByIndex(ctx, req.(*GetLeavesByIndexRequest)) 1548 } 1549 return interceptor(ctx, in, info, handler) 1550 } 1551 1552 func _TrillianLog_GetLeavesByRange_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1553 in := new(GetLeavesByRangeRequest) 1554 if err := dec(in); err != nil { 1555 return nil, err 1556 } 1557 if interceptor == nil { 1558 return srv.(TrillianLogServer).GetLeavesByRange(ctx, in) 1559 } 1560 info := &grpc.UnaryServerInfo{ 1561 Server: srv, 1562 FullMethod: "/trillian.TrillianLog/GetLeavesByRange", 1563 } 1564 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1565 return srv.(TrillianLogServer).GetLeavesByRange(ctx, req.(*GetLeavesByRangeRequest)) 1566 } 1567 return interceptor(ctx, in, info, handler) 1568 } 1569 1570 func _TrillianLog_GetLeavesByHash_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1571 in := new(GetLeavesByHashRequest) 1572 if err := dec(in); err != nil { 1573 return nil, err 1574 } 1575 if interceptor == nil { 1576 return srv.(TrillianLogServer).GetLeavesByHash(ctx, in) 1577 } 1578 info := &grpc.UnaryServerInfo{ 1579 Server: srv, 1580 FullMethod: "/trillian.TrillianLog/GetLeavesByHash", 1581 } 1582 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1583 return srv.(TrillianLogServer).GetLeavesByHash(ctx, req.(*GetLeavesByHashRequest)) 1584 } 1585 return interceptor(ctx, in, info, handler) 1586 } 1587 1588 var _TrillianLog_serviceDesc = grpc.ServiceDesc{ 1589 ServiceName: "trillian.TrillianLog", 1590 HandlerType: (*TrillianLogServer)(nil), 1591 Methods: []grpc.MethodDesc{ 1592 { 1593 MethodName: "QueueLeaf", 1594 Handler: _TrillianLog_QueueLeaf_Handler, 1595 }, 1596 { 1597 MethodName: "AddSequencedLeaf", 1598 Handler: _TrillianLog_AddSequencedLeaf_Handler, 1599 }, 1600 { 1601 MethodName: "GetInclusionProof", 1602 Handler: _TrillianLog_GetInclusionProof_Handler, 1603 }, 1604 { 1605 MethodName: "GetInclusionProofByHash", 1606 Handler: _TrillianLog_GetInclusionProofByHash_Handler, 1607 }, 1608 { 1609 MethodName: "GetConsistencyProof", 1610 Handler: _TrillianLog_GetConsistencyProof_Handler, 1611 }, 1612 { 1613 MethodName: "GetLatestSignedLogRoot", 1614 Handler: _TrillianLog_GetLatestSignedLogRoot_Handler, 1615 }, 1616 { 1617 MethodName: "GetSequencedLeafCount", 1618 Handler: _TrillianLog_GetSequencedLeafCount_Handler, 1619 }, 1620 { 1621 MethodName: "GetEntryAndProof", 1622 Handler: _TrillianLog_GetEntryAndProof_Handler, 1623 }, 1624 { 1625 MethodName: "InitLog", 1626 Handler: _TrillianLog_InitLog_Handler, 1627 }, 1628 { 1629 MethodName: "QueueLeaves", 1630 Handler: _TrillianLog_QueueLeaves_Handler, 1631 }, 1632 { 1633 MethodName: "AddSequencedLeaves", 1634 Handler: _TrillianLog_AddSequencedLeaves_Handler, 1635 }, 1636 { 1637 MethodName: "GetLeavesByIndex", 1638 Handler: _TrillianLog_GetLeavesByIndex_Handler, 1639 }, 1640 { 1641 MethodName: "GetLeavesByRange", 1642 Handler: _TrillianLog_GetLeavesByRange_Handler, 1643 }, 1644 { 1645 MethodName: "GetLeavesByHash", 1646 Handler: _TrillianLog_GetLeavesByHash_Handler, 1647 }, 1648 }, 1649 Streams: []grpc.StreamDesc{}, 1650 Metadata: "trillian_log_api.proto", 1651 } 1652 1653 func init() { proto.RegisterFile("trillian_log_api.proto", fileDescriptor0) } 1654 1655 var fileDescriptor0 = []byte{ 1656 // 1526 bytes of a gzipped FileDescriptorProto 1657 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x58, 0x5f, 0x6f, 0x1b, 0x45, 1658 0x10, 0xef, 0xc5, 0x89, 0xe3, 0x4c, 0x9a, 0x38, 0xd9, 0xd0, 0xc6, 0xb9, 0x34, 0x6d, 0x7a, 0x69, 1659 0x5a, 0x37, 0x94, 0x1c, 0x29, 0x42, 0xa0, 0xa8, 0x02, 0x35, 0x29, 0x0a, 0xa1, 0x06, 0xca, 0x25, 1660 0x42, 0x15, 0x3c, 0x9c, 0xce, 0xe7, 0xcd, 0xe5, 0x84, 0x73, 0xeb, 0xde, 0xad, 0xa3, 0xba, 0x55, 1661 0x25, 0xfe, 0xa8, 0xfc, 0x79, 0x80, 0x17, 0x78, 0xe8, 0x0b, 0x7f, 0xde, 0x50, 0xbf, 0x00, 0x1f, 1662 0x03, 0x21, 0xf1, 0x15, 0x78, 0xe0, 0x63, 0xa0, 0xdb, 0xdd, 0xf3, 0xfd, 0xf1, 0xdd, 0xd9, 0x2e, 1663 0x6d, 0xe1, 0xcd, 0x37, 0x3b, 0x3b, 0xf3, 0xfb, 0xcd, 0xee, 0xcc, 0xce, 0x18, 0x4e, 0x53, 0xd7, 1664 0x6e, 0x36, 0x6d, 0xc3, 0xd1, 0x9b, 0xc4, 0xd2, 0x8d, 0x96, 0xbd, 0xde, 0x72, 0x09, 0x25, 0xa8, 1665 0x14, 0xc8, 0xe5, 0x33, 0x16, 0x21, 0x56, 0x13, 0xab, 0x46, 0xcb, 0x56, 0x0d, 0xc7, 0x21, 0xd4, 1666 0xa0, 0x36, 0x71, 0x3c, 0xae, 0x27, 0x9f, 0x13, 0xab, 0xec, 0xab, 0xde, 0x3e, 0x50, 0xa9, 0x7d, 1667 0x84, 0x3d, 0x6a, 0x1c, 0xb5, 0x84, 0xc2, 0xbc, 0x50, 0x70, 0x5b, 0xa6, 0xea, 0x51, 0x83, 0xb6, 1668 0x83, 0x9d, 0xd3, 0x81, 0x07, 0xfe, 0xad, 0x9c, 0x85, 0xd2, 0xf6, 0xa1, 0xe1, 0x5a, 0x78, 0x9f, 1669 0x20, 0x04, 0xa3, 0x6d, 0x0f, 0xbb, 0x15, 0x69, 0xb9, 0x50, 0x9d, 0xd0, 0xd8, 0x6f, 0xe5, 0x33, 1670 0x09, 0x66, 0x3e, 0x68, 0xe3, 0x36, 0xae, 0x61, 0xe3, 0x40, 0xc3, 0x77, 0xda, 0xd8, 0xa3, 0xe8, 1671 0x14, 0x14, 0x7d, 0xdc, 0x76, 0xa3, 0x22, 0x2d, 0x4b, 0xd5, 0x82, 0x36, 0xd6, 0x24, 0xd6, 0x6e, 1672 0x03, 0xad, 0xc2, 0x68, 0x13, 0x1b, 0x07, 0x95, 0x91, 0x65, 0xa9, 0x3a, 0x79, 0x75, 0x76, 0xbd, 1673 0xeb, 0xaa, 0x46, 0x2c, 0xb6, 0x9d, 0x2d, 0x23, 0x15, 0x26, 0x4c, 0xe6, 0x52, 0xa7, 0xa4, 0x52, 1674 0x60, 0xba, 0x28, 0xd4, 0x0d, 0xd0, 0x68, 0x25, 0x53, 0xfc, 0x52, 0xde, 0x85, 0xd9, 0x08, 0x04, 1675 0xaf, 0x45, 0x1c, 0x0f, 0xa3, 0xd7, 0x61, 0xf2, 0x8e, 0x2f, 0x6c, 0xe8, 0x11, 0x9f, 0xf3, 0xa1, 1676 0x1d, 0xb6, 0xa3, 0x11, 0x78, 0x06, 0xae, 0xeb, 0xff, 0x56, 0xbe, 0x96, 0x60, 0xfe, 0x7a, 0xa3, 1677 0xb1, 0xe7, 0x93, 0x71, 0x4c, 0x2e, 0xfc, 0x8f, 0x98, 0xdd, 0x84, 0x4a, 0x2f, 0x12, 0x41, 0x50, 1678 0x85, 0xa2, 0x8b, 0xbd, 0x76, 0x93, 0xf6, 0xe3, 0x26, 0xd4, 0x94, 0x9f, 0x24, 0xa8, 0xec, 0x60, 1679 0xba, 0xeb, 0x98, 0xcd, 0xb6, 0x67, 0x13, 0xe7, 0x96, 0x4b, 0x48, 0x3f, 0x62, 0x4b, 0x00, 0x3e, 1680 0x72, 0xdd, 0x76, 0x1a, 0xf8, 0x2e, 0x73, 0x54, 0xd0, 0x26, 0x7c, 0xc9, 0xae, 0x2f, 0x40, 0x8b, 1681 0x30, 0x41, 0x5d, 0x8c, 0x75, 0xcf, 0xbe, 0x87, 0x19, 0xa1, 0x82, 0x56, 0xf2, 0x05, 0x7b, 0xf6, 1682 0x3d, 0x1c, 0x67, 0x3b, 0x3a, 0x00, 0xdb, 0x2f, 0x24, 0x58, 0x48, 0x01, 0x28, 0xf8, 0xae, 0xc2, 1683 0x58, 0xcb, 0x17, 0x08, 0xba, 0xe5, 0xd0, 0x14, 0xd7, 0xe3, 0xab, 0xe8, 0x4d, 0x28, 0x7b, 0xb6, 1684 0xe5, 0xf8, 0xe7, 0x4e, 0x2c, 0xdd, 0x25, 0x84, 0x8a, 0x48, 0x47, 0xe2, 0xb3, 0xc7, 0x14, 0x6a, 1685 0xc4, 0xd2, 0x08, 0xa1, 0xda, 0x94, 0x17, 0xfd, 0x54, 0x7e, 0x97, 0xe0, 0x6c, 0x0f, 0x8a, 0xad, 1686 0xce, 0xdb, 0x86, 0x77, 0xd8, 0x27, 0x58, 0x8b, 0xc0, 0x42, 0xa3, 0x1f, 0x1a, 0xde, 0x21, 0x43, 1687 0x79, 0x52, 0x2b, 0xf9, 0x02, 0x7f, 0x6b, 0x7e, 0xa8, 0xd6, 0x60, 0x96, 0xb8, 0x0d, 0xec, 0xea, 1688 0xf5, 0x8e, 0xee, 0x89, 0xd3, 0x66, 0x21, 0x2b, 0x69, 0x65, 0xb6, 0xb0, 0xd5, 0x09, 0x2e, 0x41, 1689 0x3c, 0xac, 0x63, 0x03, 0x84, 0xf5, 0x1b, 0x09, 0xce, 0x65, 0x12, 0xea, 0x0d, 0x6e, 0xe1, 0x59, 1690 0x06, 0xf7, 0x37, 0x09, 0xe4, 0x1d, 0x4c, 0xb7, 0x89, 0xe3, 0xd9, 0x1e, 0xc5, 0x8e, 0xd9, 0x19, 1691 0xe4, 0x16, 0x5e, 0x84, 0xf2, 0x81, 0xed, 0x7a, 0x54, 0x0f, 0x23, 0xc8, 0xaf, 0xe2, 0x14, 0x13, 1692 0xef, 0x07, 0x61, 0xac, 0xc2, 0x8c, 0x87, 0x4d, 0xe2, 0x34, 0xf4, 0x64, 0xa8, 0xa7, 0xb9, 0x7c, 1693 0xff, 0x89, 0xef, 0xe6, 0x43, 0x09, 0x16, 0x53, 0x81, 0x3f, 0xe7, 0xdb, 0x69, 0xc1, 0xd2, 0x0e, 1694 0xa6, 0x35, 0x83, 0x62, 0x8f, 0xc6, 0x15, 0xf3, 0x43, 0x18, 0x23, 0x3c, 0x32, 0x00, 0x61, 0x83, 1695 0x65, 0x41, 0xaa, 0x23, 0x41, 0x39, 0x85, 0xcb, 0xc8, 0x50, 0x5c, 0x0e, 0xe0, 0xcc, 0x0e, 0xa6, 1696 0xb1, 0xea, 0xb6, 0x4d, 0xda, 0xce, 0x53, 0xa7, 0xf2, 0x06, 0x8b, 0x59, 0x9a, 0x1f, 0xc1, 0x24, 1697 0xa8, 0x72, 0xa6, 0x2f, 0x8d, 0x56, 0x39, 0xa6, 0xa6, 0xfc, 0x28, 0xc1, 0xfc, 0x0e, 0xa6, 0x6f, 1698 0x39, 0xd4, 0xed, 0x5c, 0x77, 0x1a, 0xff, 0xbb, 0xba, 0xf9, 0x98, 0x17, 0xf6, 0x04, 0xbe, 0xe1, 1699 0x2e, 0x66, 0xf0, 0x82, 0x15, 0xf2, 0x5f, 0xb0, 0x94, 0x33, 0x1f, 0x1d, 0xea, 0xcc, 0x6f, 0xc3, 1700 0xf4, 0xae, 0x63, 0x53, 0xff, 0xf3, 0x29, 0x9f, 0xf2, 0x0d, 0x28, 0x77, 0x2d, 0x0b, 0xee, 0x1b, 1701 0x30, 0x6e, 0xba, 0xd8, 0xa0, 0x98, 0xdb, 0xce, 0x41, 0x19, 0xe8, 0x29, 0x5f, 0x49, 0x80, 0x82, 1702 0x66, 0xe2, 0x18, 0x7b, 0x7d, 0x40, 0x5e, 0x86, 0x62, 0x93, 0xe9, 0x89, 0xba, 0x99, 0x12, 0x37, 1703 0xa1, 0x30, 0xfc, 0xdb, 0xbf, 0x07, 0x73, 0x31, 0x20, 0x82, 0xd3, 0x35, 0x98, 0x0a, 0xfb, 0x9a, 1704 0xd0, 0x73, 0xe6, 0xeb, 0x7f, 0xb2, 0xdb, 0xd9, 0x1c, 0x63, 0x4f, 0xf9, 0x4e, 0x82, 0x85, 0x44, 1705 0x47, 0xf1, 0xec, 0x58, 0x0e, 0x72, 0x77, 0xdf, 0x07, 0x39, 0x0d, 0x4f, 0x78, 0x80, 0xbc, 0x79, 1706 0xe9, 0x4b, 0x33, 0xd0, 0x53, 0x3e, 0xe5, 0xc9, 0xca, 0x0d, 0x6d, 0x75, 0x58, 0xbe, 0x0d, 0x99, 1707 0xac, 0x85, 0x78, 0xb2, 0x0e, 0xfd, 0xe0, 0x7e, 0xc9, 0xf3, 0x31, 0x01, 0x41, 0x50, 0x1a, 0x22, 1708 0x98, 0xff, 0xfa, 0xb1, 0x78, 0x14, 0x8f, 0x85, 0x66, 0x38, 0x16, 0xee, 0x13, 0x8b, 0x73, 0x30, 1709 0xe9, 0x51, 0xc3, 0xa5, 0xb1, 0xca, 0x05, 0x4c, 0xc4, 0xa3, 0xf1, 0x02, 0x8c, 0xf1, 0x32, 0xc9, 1710 0xcb, 0x16, 0xff, 0x18, 0xfe, 0xdc, 0x13, 0x31, 0x12, 0xd0, 0x7a, 0x62, 0x24, 0x3d, 0x41, 0x8c, 1711 0x86, 0x7b, 0x84, 0x1e, 0x4b, 0x70, 0x3a, 0x02, 0x64, 0xf8, 0x36, 0xaf, 0x10, 0x6b, 0xf3, 0x52, 1712 0x3b, 0xb9, 0xc2, 0x53, 0xea, 0xe4, 0x1e, 0xc6, 0xcf, 0x33, 0xd6, 0xc1, 0x3d, 0xcf, 0x7b, 0x55, 1713 0x87, 0xa9, 0x58, 0xf6, 0x75, 0x5f, 0x0f, 0x29, 0xff, 0xf5, 0x58, 0x83, 0x22, 0x1f, 0x36, 0xbb, 1714 0x05, 0x9d, 0x8f, 0xa1, 0xeb, 0x6e, 0xcb, 0x5c, 0xdf, 0x63, 0x2b, 0x9a, 0xd0, 0x50, 0xfe, 0x18, 1715 0x81, 0xf1, 0xc0, 0x7c, 0x15, 0x66, 0x8e, 0xb0, 0xfb, 0x49, 0x13, 0xeb, 0x61, 0xe0, 0x25, 0xd6, 1716 0x5f, 0x4f, 0x73, 0x79, 0x2d, 0x08, 0x7f, 0x90, 0xca, 0xc7, 0x46, 0xb3, 0x8d, 0x45, 0x0f, 0xce, 1717 0x4e, 0xeb, 0x43, 0x5f, 0xe0, 0x2f, 0xe3, 0xbb, 0xd4, 0x35, 0xf4, 0x86, 0x41, 0x0d, 0x46, 0xfa, 1718 0xa4, 0x36, 0xc1, 0x24, 0x37, 0x0c, 0x6a, 0x24, 0x0a, 0xc1, 0x68, 0xf2, 0xd5, 0xbe, 0x02, 0x88, 1719 0x2f, 0x37, 0xb0, 0x43, 0x6d, 0xda, 0xe1, 0x40, 0xc6, 0x98, 0x95, 0x19, 0xa6, 0x26, 0x16, 0x18, 1720 0x94, 0x6d, 0x28, 0xb3, 0xd2, 0xab, 0x77, 0x67, 0xef, 0x4a, 0x91, 0xb1, 0x96, 0x03, 0xd6, 0xc1, 1721 0x74, 0xbe, 0xbe, 0x1f, 0x68, 0x68, 0xd3, 0x6c, 0x4b, 0xf7, 0x1b, 0xdd, 0x84, 0x39, 0xdb, 0xa1, 1722 0xd8, 0x72, 0x0d, 0x1a, 0x35, 0x34, 0xde, 0xd7, 0x10, 0xea, 0x6e, 0xeb, 0xca, 0x94, 0x1b, 0x30, 1723 0xc6, 0xde, 0xfc, 0x04, 0x4f, 0x29, 0xc9, 0xf3, 0x34, 0x14, 0x7d, 0x66, 0xd8, 0xab, 0x14, 0xd8, 1724 0xed, 0x16, 0x5f, 0xef, 0x8c, 0x96, 0x46, 0x66, 0x0a, 0x57, 0xff, 0x9e, 0x82, 0xc9, 0x7d, 0x71, 1725 0xbe, 0x35, 0x62, 0x21, 0x07, 0x26, 0xba, 0xd3, 0x37, 0x92, 0x13, 0xf5, 0x39, 0x32, 0x3b, 0xcb, 1726 0x8b, 0xa9, 0x6b, 0xfc, 0xfa, 0x2a, 0xd5, 0xcf, 0xff, 0xfc, 0xeb, 0xfb, 0x11, 0x45, 0x59, 0x52, 1727 0x8f, 0x37, 0xea, 0x98, 0x1a, 0x1b, 0x6a, 0x93, 0x58, 0x9e, 0x7a, 0x9f, 0x27, 0xe0, 0x03, 0x95, 1728 0x5f, 0xdd, 0x4d, 0x69, 0x0d, 0x7d, 0x2b, 0xc1, 0x4c, 0x72, 0x28, 0x46, 0xe7, 0x43, 0xdb, 0x19, 1729 0xa3, 0xbb, 0xac, 0xe4, 0xa9, 0x08, 0x14, 0x57, 0x19, 0x8a, 0x2b, 0xca, 0xa5, 0x7c, 0x14, 0x41, 1730 0x62, 0x37, 0x7c, 0x3c, 0xbf, 0x48, 0x30, 0xdb, 0x33, 0x5e, 0xa1, 0x88, 0xb7, 0xac, 0x99, 0x5b, 1731 0x5e, 0xc9, 0xd5, 0x11, 0x90, 0xb6, 0x18, 0xa4, 0x6b, 0x68, 0x33, 0x17, 0x92, 0x7a, 0x3f, 0x3c, 1732 0xd0, 0x07, 0x9b, 0x76, 0x60, 0x4a, 0xe7, 0xcd, 0xdd, 0xaf, 0xbc, 0x6e, 0xa4, 0x4d, 0x80, 0xa8, 1733 0x9a, 0x03, 0x22, 0x56, 0x0e, 0xe5, 0xcb, 0x03, 0x68, 0x0a, 0xd0, 0xaf, 0x31, 0xd0, 0x1b, 0x48, 1734 0xcd, 0x8f, 0x63, 0x88, 0xb3, 0xce, 0x93, 0x09, 0xfd, 0x20, 0xc1, 0x5c, 0xca, 0x98, 0x85, 0x2e, 1735 0xc4, 0x7c, 0x67, 0x8c, 0x8f, 0xf2, 0x6a, 0x1f, 0x2d, 0x81, 0xee, 0x65, 0x86, 0x6e, 0x0d, 0x55, 1736 0xd3, 0xd1, 0x6d, 0x9a, 0xe1, 0x46, 0x11, 0xc0, 0x47, 0xe2, 0x91, 0xe8, 0x9d, 0x86, 0xd0, 0xa5, 1737 0x98, 0xcf, 0xec, 0xc1, 0x4c, 0xae, 0xf6, 0x57, 0x14, 0xf8, 0x5e, 0x64, 0xf8, 0x56, 0xd1, 0x4a, 1738 0x46, 0xf4, 0xfc, 0x8a, 0xed, 0x6d, 0x36, 0x99, 0x05, 0xf4, 0xb3, 0x04, 0xa7, 0x52, 0xa7, 0x1b, 1739 0x74, 0x31, 0xe6, 0x30, 0x73, 0xcc, 0x92, 0x2f, 0xf5, 0xd5, 0x13, 0xb8, 0x5e, 0x65, 0xb8, 0x54, 1740 0xf4, 0xd2, 0x80, 0xd9, 0xc1, 0xe7, 0x29, 0x96, 0xb0, 0xc9, 0xf1, 0x24, 0x9a, 0xb0, 0x19, 0xa3, 1741 0x95, 0xac, 0xe4, 0xa9, 0xc4, 0x13, 0x16, 0xad, 0x0d, 0x9e, 0x1d, 0xc8, 0x84, 0x71, 0x31, 0x28, 1742 0xa0, 0x4a, 0xe8, 0x22, 0x3e, 0x95, 0xc8, 0x0b, 0x29, 0x2b, 0xc2, 0xe7, 0x0a, 0xf3, 0xb9, 0xa4, 1743 0x2c, 0x66, 0x5c, 0x1f, 0xdb, 0xb1, 0x29, 0xaa, 0xc1, 0x64, 0xa4, 0x7b, 0x47, 0x67, 0x7a, 0x6b, 1744 0x5f, 0xd8, 0x77, 0xcb, 0x4b, 0x19, 0xab, 0xc2, 0xe1, 0x09, 0x64, 0x00, 0xea, 0xed, 0x92, 0xd1, 1745 0x4a, 0x66, 0x45, 0x8b, 0xd8, 0xbe, 0x90, 0xaf, 0xd4, 0x75, 0xf1, 0x31, 0x3b, 0xa4, 0x58, 0xcf, 1746 0x9a, 0x38, 0xa4, 0xb4, 0x96, 0x3a, 0x71, 0x48, 0xa9, 0x2d, 0x6f, 0x8f, 0x71, 0xd6, 0xec, 0x65, 1747 0x18, 0x8f, 0xf6, 0xa8, 0x19, 0xc6, 0x63, 0xbd, 0xa2, 0x72, 0x02, 0xdd, 0x86, 0x72, 0xa2, 0x29, 1748 0x42, 0xcb, 0xa9, 0x1b, 0xa3, 0xc5, 0xec, 0x7c, 0x8e, 0x46, 0x60, 0x79, 0xeb, 0x3d, 0x58, 0x30, 1749 0xc9, 0x51, 0xf0, 0xca, 0xc6, 0xff, 0x19, 0xdf, 0x9a, 0x8b, 0x3c, 0x82, 0xd7, 0x5b, 0xf6, 0x2d, 1750 0x5f, 0x78, 0x4b, 0xfa, 0x48, 0xb6, 0x6c, 0x7a, 0xd8, 0xae, 0xaf, 0x9b, 0xe4, 0x48, 0x15, 0x7f, 1751 0xb2, 0x07, 0x1b, 0xeb, 0x45, 0xb6, 0xf3, 0x95, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0x37, 0x16, 1752 0xa6, 0xd6, 0xdf, 0x17, 0x00, 0x00, 1753 }