cosmos-sdk/x
Emmanuel T Odeke d2b914781b
x/genutil: fix CollectTxs traversal logic (#6913)
* x/genutil: fix CollectTxs traversal logic

Fixes the file traversal of CollectTxs to correctly skip over
directories instead of trying to read them, failing and erroring
out.

Also while here, changed the order to perform the os read
only after the AppState UnmarshalJSON has succeeded, otherwise
an attack vector can be to purposefully request many file stats
which touches kernel resources, while  just causing failures
indefinitely.

Fixes #6788

* address comments

* Fix test by passing in blank AppState

Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: SaReN <sahithnarahari@gmail.com>
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-10-08 11:22:39 +00:00
..
auth Use nil instead of protobuf.Empty in genesis BaseAccount (#7463) 2020-10-06 16:07:37 +00:00
bank 0.39->0.40 CLI migrate command (#6839) 2020-10-05 21:28:14 +00:00
capability remove amino from x/capability (#7389) 2020-09-25 11:43:19 +00:00
crisis Change address from bytes to bech32 strings (#7242) 2020-09-25 10:25:37 +00:00
distribution UpgradeClient Followup #1 (#7457) 2020-10-08 09:22:22 +00:00
evidence 0.39->0.40 CLI migrate command (#6839) 2020-10-05 21:28:14 +00:00
genaccounts 0.39->0.40 CLI migrate command (#6839) 2020-10-05 21:28:14 +00:00
genutil x/genutil: fix CollectTxs traversal logic (#6913) 2020-10-08 11:22:39 +00:00
gov 0.39->0.40 CLI migrate command (#6839) 2020-10-05 21:28:14 +00:00
ibc add ConsensusParams to ClientState (#7456) 2020-10-08 11:01:55 +00:00
mint Change address from bytes to bech32 strings (#7242) 2020-09-25 10:25:37 +00:00
params Change address from bytes to bech32 strings (#7242) 2020-09-25 10:25:37 +00:00
simulation LGTM alerts audit (#7440) 2020-10-02 15:13:58 +02:00
slashing 0.39->0.40 CLI migrate command (#6839) 2020-10-05 21:28:14 +00:00
staking Update TM to latest (+add test) (#7442) 2020-10-08 12:44:11 +02:00
upgrade UpgradeClient Followup #1 (#7457) 2020-10-08 09:22:22 +00:00
README.md docs: improve IBC guide (#6472) 2020-07-07 06:19:36 -04:00

List of Modules

Here are some production-grade modules that can be used in Cosmos SDK applications, along with their respective documentation:

  • Auth - Authentication of accounts and transactions for Cosmos SDK application.
  • Bank - Token transfer functionalities.
  • Capability - Object capability implementation.
  • Crisis - Halting the blockchain under certain circumstances (e.g. if an invariant is broken).
  • Distribution - Fee distribution, and staking token provision distribution.
  • Evidence - Evidence handling for double signing, misbehaviour, etc.
  • Governance - On-chain proposals and voting.
  • IBC - IBC protocol for transport, authentication adn ordering.
  • IBC Transfer - Cross-chain fungible token transfer implementation through IBC.
  • Mint - Creation of new units of staking token.
  • Params - Globally available parameter store.
  • Slashing - Validator punishment mechanisms.
  • Staking - Proof-of-Stake layer for public blockchains.
  • Upgrade - Software upgrades handling and coordination.

To learn more about the process of building modules, visit the building modules reference documentation.