good morning!!!!

Skip to content
Snippets Groups Projects
  1. Feb 10, 2018
  2. Feb 05, 2018
  3. Jan 22, 2018
    • Zsolt Felföldi's avatar
      p2p, p2p/discover, p2p/discv5: implement UDP port sharing (#15200) · 92580d69
      Zsolt Felföldi authored
      This commit affects p2p/discv5 "topic discovery" by running it on
      the same UDP port where the old discovery works. This is realized
      by giving an "unhandled" packet channel to the old v4 discovery
      packet handler where all invalid packets are sent. These packets
      are then processed by v5. v5 packets are always invalid when
      interpreted by v4 and vice versa. This is ensured by adding one
      to the first byte of the packet hash in v5 packets.
      
      DiscoveryV5Bootnodes is also changed to point to new bootnodes
      that are implementing the changed packet format with modified
      hash. Existing and new v5 bootnodes are both running on different
      ports ATM.
      92580d69
  4. Oct 24, 2017
    • Zsolt Felföldi's avatar
      les, light: LES/2 protocol version (#14970) · ca376ead
      Zsolt Felföldi authored
      This PR implements the new LES protocol version extensions:
      
      * new and more efficient Merkle proofs reply format (when replying to
        a multiple Merkle proofs request, we just send a single set of trie
        nodes containing all necessary nodes)
      * BBT (BloomBitsTrie) works similarly to the existing CHT and contains
        the bloombits search data to speed up log searches
      * GetTxStatusMsg returns the inclusion position or the
        pending/queued/unknown state of a transaction referenced by hash
      * an optional signature of new block data (number/hash/td) can be
        included in AnnounceMsg to provide an option for "very light
        clients" (mobile/embedded devices) to skip expensive Ethash check
        and accept multiple signatures of somewhat trusted servers (still a
        lot better than trusting a single server completely and retrieving
        everything through RPC). The new client mode is not implemented in
        this PR, just the protocol extension.
      ca376ead
  5. Aug 18, 2017
  6. Aug 08, 2017
  7. Jun 21, 2017
    • Zsolt Felföldi's avatar
      les: code refactoring (#14416) · a5d08c89
      Zsolt Felföldi authored
      This commit does various code refactorings:
      
      - generalizes and moves the request retrieval/timeout/resend logic out of LesOdr
        (will be used by a subsequent PR)
      - reworks the peer management logic so that all services can register with
        peerSet to get notified about added/dropped peers (also gets rid of the ugly
        getAllPeers callback in requestDistributor)
      - moves peerSet, LesOdr, requestDistributor and retrieveManager initialization
        out of ProtocolManager because I believe they do not really belong there and the
        whole init process was ugly and ad-hoc
      a5d08c89
  8. Apr 04, 2017
  9. Mar 23, 2017
    • Felix Lange's avatar
      core: refactor genesis handling · 37dd9086
      Felix Lange authored
      This commit solves several issues concerning the genesis block:
      
      * Genesis/ChainConfig loading was handled by cmd/geth code. This left
        library users in the cold. They could specify a JSON-encoded
        string and overwrite the config, but didn't get any of the additional
        checks performed by geth.
      * Decoding and writing of genesis JSON was conflated in
        WriteGenesisBlock. This made it a lot harder to embed the genesis
        block into the forthcoming config file loader. This commit changes
        things so there is a single Genesis type that represents genesis
        blocks. All uses of Write*Genesis* are changed to use the new type
        instead.
      * If the chain config supplied by the user was incompatible with the
        current chain (i.e. the chain had already advanced beyond a scheduled
        fork), it got overwritten. This is not an issue in practice because
        previous forks have always had the highest total difficulty. It might
        matter in the future though. The new code reverts the local chain to
        the point of the fork when upgrading configuration.
      
      The change to genesis block data removes compression library
      dependencies from package core.
      37dd9086
  10. Mar 03, 2017
  11. Feb 23, 2017
  12. Jan 26, 2017
  13. Dec 10, 2016
  14. Nov 15, 2016
  15. Nov 13, 2016
  16. Nov 09, 2016
Loading