Class Reseeder

java.lang.Object
net.i2p.router.networkdb.reseed.Reseeder

public class Reseeder extends Object
Moved from ReseedHandler in routerconsole. See ReseedChecker for additional comments. Handler to deal with reseed requests. This will reseed from the URLs specified below unless the I2P configuration property "i2p.reseedURL" is set. It always writes to ./netDb/, so don't mess with that. This is somewhat complicated by trying to log to three places - the console, the router log, and the wrapper log.
  • Field Details

    • DEFAULT_SEED_URL

      public static final String DEFAULT_SEED_URL
      NOTE - URLs that are in both the standard and SSL groups must use the same hostname, so the reseed process will not download from both. Ports are supported as of 0.9.14. NOTE - Each seedURL must be a directory, it must end with a '/', it can't end with 'index.html', for example. Both because of how individual file URLs are constructed, and because SSLEepGet doesn't follow redirects.
      See Also:
    • DEFAULT_SSL_SEED_URL

      public static final String DEFAULT_SSL_SEED_URL
      The I2P reseed servers are managed by backup (backup@mail.i2p). Please contact him for support, change requests, or issues. See also the reseed forum http://zzz.i2p/forums/18 and the reseed setup and testing guide https://geti2p.net/en/get-involved/guides/reseed All supported reseed hosts need a corresponding reseed (SU3) signing certificate installed in the router. All supported reseed hosts with selfsigned SSL certificates need the corresponding SSL certificate installed in the router. While this implementation supports SNI, others may not, so SNI requirements are noted.
      Since:
      0.8.2
      See Also:
    • PROP_PROXY_HOST

      public static final String PROP_PROXY_HOST
      See Also:
    • PROP_PROXY_PORT

      public static final String PROP_PROXY_PORT
      See Also:
    • PROP_PROXY_ENABLE

      public static final String PROP_PROXY_ENABLE
      Since:
      0.8.2
      See Also:
    • PROP_SSL_DISABLE

      public static final String PROP_SSL_DISABLE
      Since:
      0.8.2
      See Also:
    • PROP_SSL_REQUIRED

      public static final String PROP_SSL_REQUIRED
      Since:
      0.8.2
      See Also:
    • PROP_RESEED_URL

      public static final String PROP_RESEED_URL
      Since:
      0.8.3
      See Also:
    • PROP_PROXY_USERNAME

      public static final String PROP_PROXY_USERNAME
      all these @since 0.8.9
      See Also:
    • PROP_PROXY_PASSWORD

      public static final String PROP_PROXY_PASSWORD
      See Also:
    • PROP_PROXY_AUTH_ENABLE

      public static final String PROP_PROXY_AUTH_ENABLE
      See Also:
    • PROP_SPROXY_HOST

      public static final String PROP_SPROXY_HOST
      See Also:
    • PROP_SPROXY_PORT

      public static final String PROP_SPROXY_PORT
      See Also:
    • PROP_SPROXY_ENABLE

      public static final String PROP_SPROXY_ENABLE
      See Also:
    • PROP_SPROXY_USERNAME

      public static final String PROP_SPROXY_USERNAME
      See Also:
    • PROP_SPROXY_PASSWORD

      public static final String PROP_SPROXY_PASSWORD
      See Also:
    • PROP_SPROXY_AUTH_ENABLE

      public static final String PROP_SPROXY_AUTH_ENABLE
      See Also:
    • PROP_SPROXY_TYPE

      public static final String PROP_SPROXY_TYPE
      Since:
      0.9.33
      See Also:
    • PROP_DISABLE

      public static final String PROP_DISABLE
      Since:
      0.9
      See Also:
  • Constructor Details

  • Method Details

    • requestReseed

      void requestReseed()
      Start a reseed using the default reseed URLs. Supports su3 and directories. Threaded, nonblocking.
    • requestReseed

      void requestReseed(URI url) throws IllegalArgumentException
      Start a reseed from a single zip or su3 URL only. Threaded, nonblocking.
      Throws:
      IllegalArgumentException - if it doesn't end with zip or su3
      Since:
      0.9.19
    • requestReseed

      int requestReseed(InputStream in) throws IOException
      Start a reseed from a zip or su3 input stream. Blocking, inline. Should be fast. This will close the stream.
      Returns:
      number of valid routerinfos imported
      Throws:
      IOException - on most errors
      Since:
      0.9.19