* Add new account bech32 prefixes with godocs * Restructure spacing of existing account code * Update account godocs * More account godoc updates + new tm pub/addr helpers * Update validator type to use new account types/bech32 prefixes * Fix account documentation errors * Update Bech32 prefix for consensus nodes * Update Bech32 spec doc * Fix account type tests * Add missing account consensus functions, clear up godocs, and fix tests * Add to TestRandBech32PubkeyConsistency check * Update initialization of validator public keys * Update query signing info command * Implement new ConsAddress type with associated unit tests * [WIP] Update stake and slashing parameters * Update all calls to MustBech32ifyValPub * [WIP] Validator operator API updates * [WIP] Fix and update unit tests * Fix gov logs (helping to debug failing tests) * Fix gov tally * Fix all broken x/ unit tests * Update gaia app genesis address logic * Fix linting errors * Fix broken LCD tests * Fix broken CLI tests * Implement command to get validator address and pubkey from key name * Add support for getting validator key information via REST endpoint * Update PENDING log * Update docs * Revert GaiaGenTx.PubKey bech32 prefix * Fix broken docs and cli tests * Update genesis to use correct Bech32 (cons) prefix for pubkeys * Update docs and unit tests to reflect new cosmos account bech32 prefix * minor formatting
49 lines
1.1 KiB
Go
49 lines
1.1 KiB
Go
package slashing
|
|
|
|
import (
|
|
sdk "github.com/cosmos/cosmos-sdk/types"
|
|
"github.com/cosmos/cosmos-sdk/wire"
|
|
)
|
|
|
|
var cdc = wire.NewCodec()
|
|
|
|
// name to identify transaction types
|
|
const MsgType = "slashing"
|
|
|
|
// verify interface at compile time
|
|
var _ sdk.Msg = &MsgUnjail{}
|
|
|
|
// MsgUnjail - struct for unjailing jailed validator
|
|
type MsgUnjail struct {
|
|
ValidatorAddr sdk.ValAddress `json:"address"` // address of the validator owner
|
|
}
|
|
|
|
func NewMsgUnjail(validatorAddr sdk.ValAddress) MsgUnjail {
|
|
return MsgUnjail{
|
|
ValidatorAddr: validatorAddr,
|
|
}
|
|
}
|
|
|
|
//nolint
|
|
func (msg MsgUnjail) Type() string { return MsgType }
|
|
func (msg MsgUnjail) GetSigners() []sdk.AccAddress {
|
|
return []sdk.AccAddress{sdk.AccAddress(msg.ValidatorAddr)}
|
|
}
|
|
|
|
// get the bytes for the message signer to sign on
|
|
func (msg MsgUnjail) GetSignBytes() []byte {
|
|
b, err := cdc.MarshalJSON(msg)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
return sdk.MustSortJSON(b)
|
|
}
|
|
|
|
// quick validity check
|
|
func (msg MsgUnjail) ValidateBasic() sdk.Error {
|
|
if msg.ValidatorAddr == nil {
|
|
return ErrBadValidatorAddr(DefaultCodespace)
|
|
}
|
|
return nil
|
|
}
|