I2P: End-to-End encrypted and anonymous Internet https://i2pd.website/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
hagen 762b21f809 * Streaming.cpp : tune log messages 9 years ago
Win32 remove mascot 9 years ago
android android ported all + isConnected notif 9 years ago
build disable testnet by default 9 years ago
contrib/certificates family: volatile.crt 9 years ago
debian * update debian package defaults 9 years ago
docs * Config.cpp : add --upnp.enabled option 9 years ago
qt junk 9 years ago
tests * HTTP.cpp : add comments, update test case 9 years ago
.gitignore android without qt initial commit 9 years ago
.travis.yml * enable travis for UPNP=ON back 9 years ago
AddressBook.cpp * Addressbook.cpp : move storage creation to Start() 9 years ago
AddressBook.h update i2pd testnet addressbook url 9 years ago
BOB.cpp wait until tunnels get created 9 years ago
BOB.h wait until tunnels get created 9 years ago
Base.cpp * Base.h : extract Tag template class to separate header 9 years ago
Base.h * Base.h : extract Tag template class to separate header 9 years ago
ChangeLog * update changelog 9 years ago
ClientContext.cpp fixed android build 9 years ago
ClientContext.h * HTTPProxy.{cpp,h} : move & sort headers 9 years ago
Config.cpp * Config.cpp : add --upnp.enabled option 9 years ago
Config.h * fix doxygen warnings 9 years ago
Crypto.cpp fixed memory leak 9 years ago
Crypto.h * Base.h : extract Tag template class to separate header 9 years ago
Daemon.cpp * Daemon.cpp : make upnp configurable via options 9 years ago
Daemon.h android without qt initial commit 9 years ago
DaemonLinux.cpp QT doesn't depend on Linux daemon anymore 9 years ago
DaemonWin32.cpp fixed #546 9 years ago
Datagram.cpp use shared ClientDestination 9 years ago
Datagram.h use shared ClientDestination 9 years ago
Destination.cpp don't check for exact LS 9 years ago
Destination.h CreateLeaseSetMessage 9 years ago
FS.cpp Merge branch 'upstream-openssl' into restricted_routes 9 years ago
FS.h local addresses 9 years ago
Family.cpp * fix mistype in log message 9 years ago
Family.h set router's family 9 years ago
Garlic.cpp remember tunnels selection for following messages 9 years ago
Garlic.h remember tunnels selection for following messages 9 years ago
Gzip.cpp * Base.cpp : extract gzip classes to separate file 9 years ago
Gzip.h * Base.cpp : extract gzip classes to separate file 9 years ago
HTTP.cpp * HTTP.cpp : add comments, update test case 9 years ago
HTTP.h * HTTP.cpp : rename method 9 years ago
HTTPProxy.cpp * HTTPProxy.cpp : unwrap HandleStreamRequestComplete() 9 years ago
HTTPProxy.h * HTTPProxy.{cpp,h} : rename classes, drop typedef 9 years ago
HTTPServer.cpp android without qt initial commit 9 years ago
HTTPServer.h * HTTPProxy.cpp : don't reuse part of httppserver, addresshelpers handling will be moved to proxy in future 9 years ago
I2CP.cpp remember tunnels selection for following messages 9 years ago
I2CP.h single #ifdef for protocol type 9 years ago
I2NPProtocol.cpp pedantic style and logging changes 9 years ago
I2NPProtocol.h use LocalLeaseSet for own LeaseSets 9 years ago
I2PControl.cpp fixed VS build error 9 years ago
I2PControl.h * I2PControl.{cpp,h} : add BuildErrorResponse() 9 years ago
I2PEndian.cpp
I2PEndian.h backport openbsd support 9 years ago
I2PService.cpp * HTTPProxy: fix converted request (#508) 9 years ago
I2PService.h allow same port at different interfaces 9 years ago
I2PTunnel.cpp variable name 9 years ago
I2PTunnel.h fixed warnings 9 years ago
Identity.cpp include openssl through OPENSSL macro 9 years ago
Identity.h CreateLeaseSetMessage 9 years ago
LICENSE Update LICENSE 10 years ago
LeaseSet.cpp don't check for LS expired for FF 9 years ago
LeaseSet.h CreateLeaseSetMessage 9 years ago
LittleBigEndian.h
Log.cpp * fix doxygen warnings 9 years ago
Log.h * fix doxygen warnings 9 years ago
Makefile disable testnet by default 9 years ago
Makefile.bsd * drop boost_regex from build deps 9 years ago
Makefile.homebrew * add global switch USE_UPNP to makefile 9 years ago
Makefile.linux revert 9 years ago
Makefile.mingw * add global switch USE_UPNP to makefile 9 years ago
Makefile.osx * add global switch USE_UPNP to makefile 9 years ago
NTCPSession.cpp Merge branch 'restricted_routes' into meshnet 9 years ago
NTCPSession.h don't abort when ntcp fails to bind 9 years ago
NetDb.cpp Merge remote-tracking branch 'purple/openssl' into meshnet 9 years ago
NetDb.h testnet changes 9 years ago
NetDbRequests.cpp * tune logs 9 years ago
NetDbRequests.h shared_ptr for lookup messages 10 years ago
Profiling.cpp * Profiling : move storage from FS.cpp to Profiling.cpp 9 years ago
Profiling.h * Profiling : move storage from FS.cpp to Profiling.cpp 9 years ago
Queue.h * drop MsgQueue wrapper : not used anymore 9 years ago
README.md android is supported now 9 years ago
Reseed.cpp initial meshnet mode 9 years ago
Reseed.h removed unused parameter 9 years ago
RouterContext.cpp moved std::to_string to util.h from android 9 years ago
RouterContext.h removed GetPrivateKeys from LocalDestination 9 years ago
RouterInfo.cpp implement restricted routes (initial) 9 years ago
RouterInfo.h implement restricted routes (initial) 9 years ago
SAM.cpp Merge branch 'openssl' 9 years ago
SAM.h shard_ptr for SAMSession 9 years ago
SOCKS.cpp fixed warnings 9 years ago
SOCKS.h initial support for out proxy via local upstream socks proxy 9 years ago
SSU.cpp Merge remote-tracking branch 'purple/openssl' into meshnet 9 years ago
SSU.h Merge branch 'restricted_routes' into meshnet 9 years ago
SSUData.cpp * tune log messages 9 years ago
SSUData.h tweak ssu mtu again for meshnet 9 years ago
SSUSession.cpp Merge remote-tracking branch 'purple/openssl' into meshnet 9 years ago
SSUSession.h pass flag to SSU header 9 years ago
Signature.cpp fixed race condition at startup 9 years ago
Signature.h changed back to <openssl/ 9 years ago
Streaming.cpp * Streaming.cpp : tune log messages 9 years ago
Streaming.h use shared ClientDestination 9 years ago
Tag.h * Tag.h : add (c) header 9 years ago
Timestamp.h
TransitTunnel.cpp * tune log messages 9 years ago
TransitTunnel.h use shared_ptr for transit tunnels 9 years ago
TransportSession.h cumulative update from bitbucket 9 years ago
Transports.cpp try banning non responsive routers 9 years ago
Transports.h Merge branch 'transport_failsafe' into restricted_routes 9 years ago
Tunnel.cpp Merge remote-tracking branch 'purple/openssl' into meshnet 9 years ago
Tunnel.h Merge branch 'upstream-openssl' into meshnet 9 years ago
TunnelBase.h cumulative update from bitbucket 9 years ago
TunnelConfig.h support zero-hops tunnels for destinations 9 years ago
TunnelEndpoint.cpp stop using auto 9 years ago
TunnelEndpoint.h use shared_ptr for I2NP messages through tunnels 10 years ago
TunnelGateway.cpp stop using auto 9 years ago
TunnelGateway.h random non-zero padding 10 years ago
TunnelPool.cpp select existing connection for first hop of a tunnel 9 years ago
TunnelPool.h fixed race condition of DeliveryStatus message 9 years ago
UPnP.cpp * UPnP.cpp : tune log messages 9 years ago
UPnP.h * UPnP.{cpp,h} : cleanup & add class stub if opt-out 9 years ago
api.cpp optional elgamal precomputation for x64 9 years ago
api.h use shared_ptr for log's stream 9 years ago
appveyor.yml Update appveyor.yml 9 years ago
filelist.mk * Base.cpp : extract gzip classes to separate file 9 years ago
i2pd.cpp Merge branch 'upstream-openssl' into restricted_routes 9 years ago
stdafx.cpp Precompiled headers 10 years ago
stdafx.h * drop boost_regex from build deps 9 years ago
util.cpp fixed build error 9 years ago
util.h Add bind to network interface option 9 years ago
version.h initial meshnet mode 9 years ago

README.md

i2pd

i2pd is a full-featured C++ implementation of I2P client.

I2P (Invisible Internet Project) is anonymous network which works on top of public Internet. Privacy and anonymity are achieved by strong encryption and bouncing your traffic through thousands of I2P nodes all around the world.

We are building network which helps people to communicate and share information without restrictions.

Installing

The easiest way to install i2pd is by using precompiled binaries. See documentation for how to build i2pd from source on your OS.

Supported systems:

  • Linux x86/x64 - Build Status
  • Windows - Build status
  • Mac OS X
  • FreeBSD
  • Android

Using i2pd

See documentation and example config file.

Donations

BTC: 1K7Ds6KUeR8ya287UC4rYTjvC96vXyZbDY
DASH: Xw8YUrQpYzP9tZBmbjqxS3M97Q7v3vJKUF
LTC: LKQirrYrDeTuAPnpYq5y7LVKtywfkkHi59
ANC: AQJYweYYUqM1nVfLqfoSMpUMfzxvS4Xd7z
DOGE: DNXLQKziRPAsD9H3DFNjk4fLQrdaSX893Y

License

This project is licensed under the BSD 3-clause license, which can be found in the file LICENSE in the root of the project source code.