mirror of
https://github.com/tendermint/tendermint.git
synced 2026-01-08 06:15:33 +00:00
cannot decrease ban time
This commit is contained in:
@@ -769,16 +769,17 @@ func (a *addrBook) addBadPeer(addr *p2p.NetAddress, banTime time.Duration) bool
|
||||
// check it exists in addrbook
|
||||
ka := a.addrLookup[addr.ID]
|
||||
// check address is not already there
|
||||
if ka != nil {
|
||||
if _, alreadyBadPeer := a.badPeers[addr.ID]; !alreadyBadPeer {
|
||||
// add to bad peer list
|
||||
ka.ban(banTime)
|
||||
a.badPeers[addr.ID] = ka
|
||||
a.Logger.Info("Add address to blacklist", "addr", addr)
|
||||
}
|
||||
return true
|
||||
if ka == nil {
|
||||
return false
|
||||
}
|
||||
return false
|
||||
|
||||
if _, alreadyBadPeer := a.badPeers[addr.ID]; !alreadyBadPeer {
|
||||
// add to bad peer list
|
||||
ka.ban(banTime)
|
||||
a.badPeers[addr.ID] = ka
|
||||
a.Logger.Info("Add address to blacklist", "addr", addr)
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------
|
||||
|
||||
@@ -64,7 +64,7 @@ func (err ErrAddrBookInvalidAddr) Error() string {
|
||||
return fmt.Sprintf("Cannot add invalid address %v: %v", err.Addr, err.AddrErr)
|
||||
}
|
||||
|
||||
// Err is thrown when the address is banned and therefore cannot be used
|
||||
// ErrAddressBanned is thrown when the address has been banned and therefore cannot be used
|
||||
type ErrAddressBanned struct {
|
||||
Addr *p2p.NetAddress
|
||||
}
|
||||
|
||||
@@ -56,7 +56,9 @@ func (ka *knownAddress) markGood() {
|
||||
}
|
||||
|
||||
func (ka *knownAddress) ban(banTime time.Duration) {
|
||||
ka.LastBanTime = time.Now().Add(banTime)
|
||||
if ka.LastBanTime.Before(time.Now().Add(banTime)) {
|
||||
ka.LastBanTime = time.Now().Add(banTime)
|
||||
}
|
||||
}
|
||||
|
||||
func (ka *knownAddress) isBanned() bool {
|
||||
|
||||
Reference in New Issue
Block a user