good morning!!!!

Skip to content
Snippets Groups Projects
  1. Feb 05, 2021
  2. Jan 26, 2021
    • Zsolt Felföldi's avatar
      les: switch to new discv5 (#21940) · a72fa88a
      Zsolt Felföldi authored
      
      This PR enables running the new discv5 protocol in both LES client
      and server mode. In client mode it mixes discv5 and dnsdisc iterators
      (if both are enabled) and filters incoming ENRs for "les" tag and fork ID.
      The old p2p/discv5 package and all references to it are removed.
      
      Co-authored-by: default avatarFelix Lange <fjl@twurst.com>
      a72fa88a
  3. Jan 14, 2021
  4. Jan 08, 2021
    • Martin Holst Swende's avatar
      cmd/faucet: fix nonce-gap problem (#22145) · 6b88ab75
      Martin Holst Swende authored
      * cmd/faucet: avoid encoding for each client
      
      * cmd/faucet: fix flaw in clearing of txs, avoid sending more than necessary
      
      * cmd/faucet: fix flaw in tx cropping
      
      * cmd/faucet: revert change to not always send tx info
      
      * cmd/faucet: review fixes
      
      * cmd/faucet: revert #22018, fix order in UI
      
      * cmd/faucet: fix lock error
      
      * cmd/faucet: revert json changes
      
      * squashme
      6b88ab75
  5. Jan 07, 2021
  6. Jan 04, 2021
  7. Dec 17, 2020
  8. Dec 11, 2020
    • Mudit Gupta's avatar
      cmd/faucet: use Twitter API instead of scraping webpage (#21850) · b47f4ca5
      Mudit Gupta authored
      This PR adds support for using Twitter API to query the tweet and author details. There are two reasons behind this change:
      
      - Twitter will be deprecating the legacy website on 15th December. The current method is expected to stop working then.
      - More importantly, the current system uses Twitter handle for spam protection but the Twitter handle can be changed via automated calls. This allows bots to use the same tweet to withdraw funds infinite times as long as they keep changing their handle between every request. The Rinkeby as well as the Goerli faucet are being actively drained via this method. This PR changes the spam protection to be based on Twitter IDs instead of usernames. A user can not change their Twitter ID.
      b47f4ca5
  9. Nov 24, 2020
  10. Oct 05, 2020
  11. Aug 03, 2020
    • rene's avatar
      node: refactor package node (#21105) · c0c01612
      rene authored
      This PR significantly changes the APIs for instantiating Ethereum nodes in
      a Go program. The new APIs are not backwards-compatible, but we feel that
      this is made up for by the much simpler way of registering services on
      node.Node. You can find more information and rationale in the design
      document: https://gist.github.com/renaynay/5bec2de19fde66f4d04c535fd24f0775.
      
      There is also a new feature in Node's Go API: it is now possible to
      register arbitrary handlers on the user-facing HTTP server. In geth, this
      facility is used to enable GraphQL.
      
      There is a single minor change relevant for geth users in this PR: The
      GraphQL API is no longer available separately from the JSON-RPC HTTP
      server. If you want GraphQL, you need to enable it using the
      ./geth --http --graphql flag combination.
      
      The --graphql.port and --graphql.addr flags are no longer available.
      c0c01612
  12. Jul 28, 2020
  13. Jun 04, 2020
  14. Feb 15, 2020
  15. Nov 29, 2019
  16. Nov 14, 2019
  17. Jul 23, 2019
  18. Jun 07, 2019
    • Felix Lange's avatar
      p2p/enode: improve IPv6 support, add ENR text representation (#19663) · e83c3ccc
      Felix Lange authored
      * p2p/enr: add entries for for IPv4/IPv6 separation
      
      This adds entry types for "ip6", "udp6", "tcp6" keys. The IP type stays
      around because removing it would break a lot of code and force everyone
      to care about the distinction.
      
      * p2p/enode: track IPv4 and IPv6 address separately
      
      LocalNode predicts the local node's UDP endpoint and updates the record.
      This change makes it predict IPv4 and IPv6 endpoints separately since
      they can now be in the record at the same time.
      
      * p2p/enode: implement base64 text format
      * all: switch to enode.Parse(...)
      
      This allows passing base64-encoded node records to all the places that
      previously accepted enode:// URLs. The URL format is still supported.
      
      * cmd/bootnode, p2p: log node URL instead of ENR
      
      ...and return the base64 record in NodeInfo.
      e83c3ccc
  19. May 13, 2019
  20. May 08, 2019
  21. Apr 02, 2019
  22. Feb 07, 2019
    • Janoš Guljaš's avatar
      cmd, node, p2p/simulations: fix node account manager leak (#19004) · 26aea736
      Janoš Guljaš authored
      * node: close AccountsManager in new Close method
      
      * p2p/simulations, p2p/simulations/adapters: handle node close on shutdown
      
      * node: move node ephemeralKeystore cleanup to stop method
      
      * node: call Stop in Node.Close method
      
      * cmd/geth: close node.Node created with makeFullNode in cli commands
      
      * node: close Node instances in tests
      
      * cmd/geth, node: minor code style fixes
      
      * cmd, console, miner, mobile: proper node Close() termination
      26aea736
  23. Dec 11, 2018
  24. Sep 24, 2018
    • Felix Lange's avatar
      all: new p2p node representation (#17643) · 30cd5c18
      Felix Lange authored
      Package p2p/enode provides a generalized representation of p2p nodes
      which can contain arbitrary information in key/value pairs. It is also
      the new home for the node database. The "v4" identity scheme is also
      moved here from p2p/enr to remove the dependency on Ethereum crypto from
      that package.
      
      Record signature handling is changed significantly. The identity scheme
      registry is removed and acceptable schemes must be passed to any method
      that needs identity. This means records must now be validated explicitly
      after decoding.
      
      The enode API is designed to make signature handling easy and safe: most
      APIs around the codebase work with enode.Node, which is a wrapper around
      a valid record. Going from enr.Record to enode.Node requires a valid
      signature.
      
      * p2p/discover: port to p2p/enode
      
      This ports the discovery code to the new node representation in
      p2p/enode. The wire protocol is unchanged, this can be considered a
      refactoring change. The Kademlia table can now deal with nodes using an
      arbitrary identity scheme. This requires a few incompatible API changes:
      
        - Table.Lookup is not available anymore. It used to take a public key
          as argument because v4 protocol requires one. Its replacement is
          LookupRandom.
        - Table.Resolve takes *enode.Node instead of NodeID. This is also for
          v4 protocol compatibility because nodes cannot be looked up by ID
          alone.
        - Types Node and NodeID are gone. Further commits in the series will be
          fixes all over the the codebase to deal with those removals.
      
      * p2p: port to p2p/enode and discovery changes
      
      This adapts package p2p to the changes in p2p/discover. All uses of
      discover.Node and discover.NodeID are replaced by their equivalents from
      p2p/enode.
      
      New API is added to retrieve the enode.Node instance of a peer. The
      behavior of Server.Self with discovery disabled is improved. It now
      tries much harder to report a working IP address, falling back to
      127.0.0.1 if no suitable address can be determined through other means.
      These changes were needed for tests of other packages later in the
      series.
      
      * p2p/simulations, p2p/testing: port to p2p/enode
      
      No surprises here, mostly replacements of discover.Node, discover.NodeID
      with their new equivalents. The 'interesting' API changes are:
      
       - testing.ProtocolSession tracks complete nodes, not just their IDs.
       - adapters.NodeConfig has a new method to create a complete node.
      
      These changes were needed to make swarm tests work.
      
      Note that the NodeID change makes the code incompatible with old
      simulation snapshots.
      
      * whisper/whisperv5, whisper/whisperv6: port to p2p/enode
      
      This port was easy because whisper uses []byte for node IDs and
      URL strings in the API.
      
      * eth: port to p2p/enode
      
      Again, easy to port because eth uses strings for node IDs and doesn't
      care about node information in any way.
      
      * les: port to p2p/enode
      
      Apart from replacing discover.NodeID with enode.ID, most changes are in
      the server pool code. It now deals with complete nodes instead
      of (Pubkey, IP, Port) triples. The database format is unchanged for now,
      but we should probably change it to use the node database later.
      
      * node: port to p2p/enode
      
      This change simply replaces discover.Node and discover.NodeID with their
      new equivalents.
      
      * swarm/network: port to p2p/enode
      
      Swarm has its own node address representation, BzzAddr, containing both
      an overlay address (the hash of a secp256k1 public key) and an underlay
      address (enode:// URL).
      
      There are no changes to the BzzAddr format in this commit, but certain
      operations such as creating a BzzAddr from a node ID are now impossible
      because node IDs aren't public keys anymore.
      
      Most swarm-related changes in the series remove uses of
      NewAddrFromNodeID, replacing it with NewAddr which takes a complete node
      as argument. ToOverlayAddr is removed because we can just use the node
      ID directly.
      30cd5c18
  25. Sep 21, 2018
  26. Sep 04, 2018
  27. Jul 30, 2018
    • Anton Evangelatov's avatar
      build: rename swarm deb package to ethereum-swarm; change swarm deb version... · a5d5609e
      Anton Evangelatov authored
      build: rename swarm deb package to ethereum-swarm; change swarm deb version from 1.8.x to 0.3.x (#16988)
      
      * build: add support for different package and binary names
      
      * build: bump up copyright date
      
      * build: change default PackageName to empty string
      
      * build, internal, swarm: enhance build/release process
      
      * build: hack ethereum-swarm as a "depends" in deb package
      
      * build/ci: remove redundant variables
      
      * build, cmd, mobile, params, swarm: remove VERSION file; rename Version to VersionMeta;
      
      * internal: remove VERSION() method which reads VERSION file
      
      * build: fix VersionFilePath to Version
      
      * Makefile: remove clean_go_build_cache.sh until it works
      
      * Makefile: revert removal of clean_go_build_cache.sh
      a5d5609e
  28. Jun 15, 2018
  29. Jun 05, 2018
  30. Mar 02, 2018
  31. Feb 22, 2018
  32. 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
  33. Jan 08, 2018
    • Felix Lange's avatar
      all: update generated code (#15808) · 5c2f1e00
      Felix Lange authored
      * core/types, core/vm, eth, tests: regenerate gencodec files
      
      * Makefile: update devtools target
      
      Install protoc-gen-go and print reminders about npm, solc and protoc.
      Also switch to github.com/kevinburke/go-bindata because it's more
      maintained.
      
      * contracts/ens: update contracts and regenerate with solidity v0.4.19
      
      The newer upstream version of the FIFSRegistrar contract doesn't set the
      resolver anymore. The resolver is now deployed separately.
      
      * contracts/release: regenerate with solidity v0.4.19
      
      * contracts/chequebook: fix fallback and regenerate with solidity v0.4.19
      
      The contract didn't have a fallback function, payments would be rejected
      when compiled with newer solidity. References to 'mortal' and 'owned'
      use the local file system so we can compile without network access.
      
      * p2p/discv5: regenerate with recent stringer
      
      * cmd/faucet: regenerate
      
      * dashboard: regenerate
      
      * eth/tracers: regenerate
      
      * internal/jsre/deps: regenerate
      
      * dashboard: avoid sed -i because it's not portable
      
      * accounts/usbwallet/internal/trezor: fix go generate warnings
      5c2f1e00
  34. Jan 03, 2018
  35. Dec 21, 2017
  36. Dec 12, 2017
  37. Nov 21, 2017
Loading