Date computations as performed in this script require the use of GNU date,
which is only available by default on Linux systems. With this check-in we
explicitly check for the existence of GNU date before continuing with the date
calculations.
Previous versions of this script relied on 'certtool' to print the expiration
dates but certtool isn't available by default on non-Linux systems either. The
previous check-in added support for using OpenSSL, retaining the old behavior
on non-Linux systems.
(Also a re-arrangement of the date warning logic)
- Encrypt DatabaseLookup messages out exploratory tunnels
when we already have the RI of the ff
- Don't use multiple routers from the same /16 in lookups or stores
This enables .onion domain names to be accessed by clients that are being
routed through the SOCKS tunnel by e.g. proxychains (assuming that the SOCKS
tunnel has been configured with a SOCKS outproxy that exits into Tor). If the
.onion is not mapped to an IP address, the client would attempt a DNS lookup
which would of course fail to find the .onion.
Clearnet domain names can also be mapped to IPs, but this is irrelevant as DNS
lookups work through SOCKS (via the configured outproxy).
- Use servlet path as base for config file and data directory names,
so we may have multiple instances running together
- Don't override service(), use doGet() and doPost() instead
Required due to webapp classloader changes in Jetty 7,
we can no longer access or extend Jetty classes.
- Extend javax HttpServlet instead of Jetty's DefaultServlet
- Implement BasicServlet to replace functions of DefaultServlet
- Add MimeTypes implementation to add to servlet's defaults
- Add local mime.properties file, remove checks in I2PSnarkServlet for those
we were missing
- Eliminate all use of Jetty utility classes including MimeType, Resource,
Buffer, Cache, URIUtil, ...
TODO:
- Use servlet path everywhere, so the war can be renamed
- Don't override service()