github.com/vipernet-xyz/tm@v0.34.24/behaviour/doc.go (about)

     1  /*
     2  Package Behaviour provides a mechanism for reactors to report behaviour of peers.
     3  
     4  Instead of a reactor calling the switch directly it will call the behaviour module which will
     5  handle the stoping and marking peer as good on behalf of the reactor.
     6  
     7  There are four different behaviours a reactor can report.
     8  
     9  1. bad message
    10  
    11  	type badMessage struct {
    12  		explanation string
    13  	}
    14  
    15  # This message will request the peer be stopped for an error
    16  
    17  2. message out of order
    18  
    19  	type messageOutOfOrder struct {
    20  		explanation string
    21  	}
    22  
    23  # This message will request the peer be stopped for an error
    24  
    25  3. consesnsus Vote
    26  
    27  	type consensusVote struct {
    28  		explanation string
    29  	}
    30  
    31  # This message will request the peer be marked as good
    32  
    33  4. block part
    34  
    35  	type blockPart struct {
    36  		explanation string
    37  	}
    38  
    39  This message will request the peer be marked as good
    40  */
    41  package behaviour