added ability to create HTTP proxy tunnel
quit immediately it we detect i2p-zero is already running (by checking for tunnelcontrol port 30000 in use)
after attempted shutdown, force shutdown after 2 seconds. this is because if there is a shutdown prior to tunnels having opened, there could be a delay of up to 20 seconds before those opening tunnels exit their sleep and start responding
added GUI tab to set up a personal eepsite (via embedded jetty)
// changing eepSiteContentDirChooseButton/eepSiteLogsDirChooseButton/eepSiteEnableLogsCheckbox/eepSiteAllowDirBrowsingCheckbox only requires a jetty restart
<Label layoutX="18.0" layoutY="9.0" prefHeight="27.0" prefWidth="120.0" text="Add a tunnel">
</Label>
@ -18,10 +18,10 @@
</toggleGroup>
</RadioButton>
<RadioButton fx:id="serverTunnelRadioButton" layoutX="19.0" layoutY="73.0" mnemonicParsing="false" text="Server tunnel - create an I2P destination address that will forward requests to the specified host and port" toggleGroup="$tunnelType" />
<RadioButton fx:id="socksProxyRadioButton" layoutX="19.0" layoutY="97.0" mnemonicParsing="false" text="SOCKS proxy - applications (like web browsers) that support SOCKS can use your proxy to connect to I2P destinations" toggleGroup="$tunnelType" />
<RadioButton fx:id="httpProxyRadioButton" layoutX="19.0" layoutY="97.0" mnemonicParsing="false" text="HTTP proxy - create a proxy that your web browser can use to access I2P web sites" toggleGroup="$tunnelType" />
<RadioButton fx:id="socksProxyRadioButton" layoutX="19.0" layoutY="120.0" mnemonicParsing="false" text="SOCKS proxy - applications that support SOCKS can use your proxy to connect to I2P destinations" toggleGroup="$tunnelType" />
<TextArea fx:id="helpTextArea" editable="false" text="I2P hides your IP address when you connect to other I2P destinations. For example, if you are using a Monero wallet: When your Monero wallet needs to announce a transaction, none of the other Monero I2P nodes that it announces the transaction to will be able to know your IP address. You can create your own I2P destination addresses using the Tunnels tab. Connections received to these I2P addresses will be forwarded to the destination of your choice (such as a local web server). You can also create your own client tunnels, which will allow existing software to easily communicate with remote I2P destinations. I2P achives privacy by routing your traffic through a series of other I2P nodes. Each node between you and your final destination will not be able to tell whether the next node in the chain is your final destination. The nodes you connect to will not know whether you are originating a tunnel, or whether you're simply acting as a link in the chain of somebody else's tunnel. I2P automatically encrypts all traffic, so no node will be able to know what kind of traffic it is forwarding on behalf of others. For more information, visit https://geti2p.net" wrapText="true" BorderPane.alignment="CENTER">
<TextArea fx:id="helpTextArea" editable="false" text="I2P hides your IP address when you connect to other I2P destinations. Note that when you first start I2P, it will take a minute to warm up and establish any pre-configured tunnels. To browse I2P web sites, in the tunnels tab ensure you have your HTTP proxy running, and configure your web browser to it (usually in your browser's preferences/proxy settings). You can then access I2P websites such as http://direct.i2p You can also easily set up your own I2P website (also known as an EepSite). I2P-zero can also be used to let other applications, such as a cryptocurrency wallet, to access the I2P network. For example, if you are using a Monero wallet, your transactions will be announced over I2P instead of over the regular internet. This means that none of the other Monero I2P nodes will be able to know your IP address. I2P achives privacy by routing your traffic through a chain of other I2P nodes. None of the nodes between you and your final destination will be able to tell whether the next node in the chain is your final destination or just another link in the chain. The nodes you connect to will not know whether you are originating a tunnel, or whether you're simply acting as a link in the chain of somebody else's tunnel. I2P automatically encrypts all traffic, so no node will be able to know what kind of traffic it is forwarding on behalf of others. This means that when you participate in the I2P network, it is impossible for you to spy on the traffic of other I2P users. For more information, visit https://geti2p.net" wrapText="true" BorderPane.alignment="CENTER">