github.com/turingchain2020/turingchain@v1.1.21/types/proto/pbft.proto (about)

     1  syntax = "proto3";
     2  
     3  import "blockchain.proto";
     4  package types;
     5  option go_package = "github.com/turingchain2020/turingchain/types";
     6  
     7  message Operation {
     8      Block value = 1;
     9  }
    10  
    11  message Checkpoint {
    12      uint32 sequence = 1;
    13      bytes  digest   = 2;
    14  }
    15  
    16  message Entry {
    17      uint32 sequence = 1;
    18      bytes  digest   = 2;
    19      uint32 view     = 3;
    20  }
    21  
    22  message ViewChange {
    23      uint32 viewchanger = 1;
    24      bytes  digest      = 2;
    25  }
    26  
    27  message Summary {
    28      uint32 sequence = 1;
    29      bytes  digest   = 2;
    30  }
    31  
    32  message Result {
    33      Block value = 1;
    34  }
    35  
    36  // -------------------------------- //
    37  
    38  message Request {
    39      oneof value {
    40          RequestClient     client     = 1;
    41          RequestPrePrepare preprepare = 2;
    42          RequestPrepare    prepare    = 3;
    43          RequestCommit     commit     = 4;
    44          RequestCheckpoint checkpoint = 5;
    45          RequestViewChange viewchange = 6;
    46          RequestAck        ack        = 7;
    47          RequestNewView    newview    = 8;
    48      }
    49  }
    50  
    51  message RequestClient {
    52      Operation op        = 1;
    53      string    timestamp = 2;
    54      string    client    = 3;
    55  }
    56  
    57  message RequestPrePrepare {
    58      uint32 view     = 1;
    59      uint32 sequence = 2;
    60      bytes  digest   = 3;
    61      uint32 replica  = 4;
    62  }
    63  
    64  message RequestPrepare {
    65      uint32 view     = 1;
    66      uint32 sequence = 2;
    67      bytes  digest   = 3;
    68      uint32 replica  = 4;
    69  }
    70  
    71  message RequestCommit {
    72      uint32 view     = 1;
    73      uint32 sequence = 2;
    74      uint32 replica  = 3;
    75  }
    76  
    77  message RequestCheckpoint {
    78      uint32 sequence = 1;
    79      bytes  digest   = 2;
    80      uint32 replica  = 3;
    81  }
    82  
    83  message RequestViewChange {
    84      uint32   view                   = 1;
    85      uint32   sequence               = 2;
    86      repeated Checkpoint checkpoints = 3;
    87      repeated Entry preps            = 4;
    88      repeated Entry prepreps         = 5;
    89      uint32         replica          = 6;
    90  }
    91  
    92  message RequestAck {
    93      uint32 view        = 1;
    94      uint32 replica     = 2;
    95      uint32 viewchanger = 3;
    96      bytes  digest      = 4;
    97  }
    98  
    99  message RequestNewView {
   100      uint32   view                   = 1;
   101      repeated ViewChange viewchanges = 2;
   102      repeated Summary summaries      = 4;
   103      uint32           replica        = 5;
   104  }
   105  
   106  message ClientReply {
   107      uint32 view      = 1;
   108      string timestamp = 2;
   109      string client    = 3;
   110      uint32 replica   = 4;
   111      Result result    = 5;
   112  }