🛡 I2P: End-to-End encrypted and anonymous Internet
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
orignal dba355eccd use atomic_store for addresses' list re-assignment 8 years ago
Win32 Graceful shutdown 8 years ago
android Timestamp.cpp added 8 years ago
build Timestamp.cpp added 8 years ago
contrib/certificates r4sas_at_mail.i2p.crt added 8 years ago
debian Update changelog 8 years ago
docs Adding option to configure reseed URLs 8 years ago
qt Timestamp.cpp added 8 years ago
tests * HTTP.cpp : add comments, update test case 8 years ago
.gitignore android without qt initial commit 8 years ago
.travis.yml temporary disable OS X 8 years ago
AddressBook.cpp prevent race condition in datagram destination 8 years ago
AddressBook.h handle default subscription in separate thread 8 years ago
BOB.cpp copy ellimination for ranges #part1 8 years ago
BOB.h more BOB error messages 8 years ago
Base.cpp * Base.h : extract Tag template class to separate header 8 years ago
Base.h * Base.h : extract Tag template class to separate header 8 years ago
ChangeLog Update ChangeLog 8 years ago
ClientContext.cpp fix #634.don't create timer in constructor 8 years ago
ClientContext.h fix #634.don't create timer in constructor 8 years ago
Config.cpp Adding option to configure reseed URLs 8 years ago
Config.h * fix doxygen warnings 8 years ago
Crypto.cpp fixed memory leak 8 years ago
Crypto.h * Base.h : extract Tag template class to separate header 8 years ago
Daemon.cpp fix meshnet mode: 8 years ago
Daemon.h android without qt initial commit 8 years ago
DaemonLinux.cpp Reload client config on SIGHUP 8 years ago
DaemonWin32.cpp fixed #546 8 years ago
Datagram.cpp check if sessions list is empty 8 years ago
Datagram.h clean-up datagram session toghters with leasesets and tags 8 years ago
Destination.cpp clean-up datagram session toghters with leasesets and tags 8 years ago
Destination.h clean-up datagram session toghters with leasesets and tags 8 years ago
FS.cpp add hooks for visiting netdb 8 years ago
FS.h add hooks for visiting netdb 8 years ago
Family.cpp check buffer size 8 years ago
Family.h set router's family 8 years ago
Garlic.cpp Merge remote-tracking branch 'purple/openssl' into merge_udp_tunnel 8 years ago
Garlic.h Merge remote-tracking branch 'purple/openssl' into merge_udp_tunnel 8 years ago
Gzip.cpp * Base.cpp : extract gzip classes to separate file 8 years ago
Gzip.h * Base.cpp : extract gzip classes to separate file 8 years ago
HTTP.cpp copy ellimination for ranges #part1 8 years ago
HTTP.h + HTTP.{cpp,h} : add HTTPRes::is_gzipped() 8 years ago
HTTPProxy.cpp copy ellimination for ranges #part1 8 years ago
HTTPProxy.h * HTTPProxy.{cpp,h} : rename classes, drop typedef 8 years ago
HTTPServer.cpp show error message in the web-console 8 years ago
HTTPServer.h fixed #629. catch HTTPServer exceptions 8 years ago
I2CP.cpp copy ellimination for ranges #part1 8 years ago
I2CP.h single #ifdef for protocol type 8 years ago
I2NPProtocol.cpp copy ellimination for ranges #part1 8 years ago
I2NPProtocol.h fix off by ones 8 years ago
I2PControl.cpp copy ellimination for ranges #part1 8 years ago
I2PControl.h * I2PControl.{cpp,h} : add BuildErrorResponse() 8 years ago
I2PEndian.cpp Avoid aliasing problems by using special buf endian handling functions wrapping memcpy 10 years ago
I2PEndian.h backport openbsd support 9 years ago
I2PService.cpp set socket options 8 years ago
I2PService.h allow same port at different interfaces 8 years ago
I2PTunnel.cpp tabify and use shared pointers 8 years ago
I2PTunnel.h show UDP tunnels 8 years ago
Identity.cpp bounds checks 8 years ago
Identity.h udp tunnels 8 years ago
LICENSE Update LICENSE 9 years ago
LeaseSet.cpp Update Indentation and don't spam route changes in datagram sessions 8 years ago
LeaseSet.h fix typo 8 years ago
LittleBigEndian.h fix LittleEndian, change endian.h version 10 years ago
Log.cpp perfect forwarding for logging arguments 8 years ago
Log.h perfect forwarding for logging arguments 8 years ago
Makefile CXXFLAGS -> NEEDED_CXXFLAGS 8 years ago
Makefile.bsd * drop boost_regex from build deps 8 years ago
Makefile.homebrew * add global switch USE_UPNP to makefile 8 years ago
Makefile.linux try unbreaking static build 8 years ago
Makefile.mingw rollback 8 years ago
Makefile.osx * add global switch USE_UPNP to makefile 8 years ago
NTCPSession.cpp Merge remote-tracking branch 'purple/openssl' 8 years ago
NTCPSession.h common termination timer for all SSU sessions 8 years ago
NetDb.cpp check if RouterInfo has been decompressed completely 8 years ago
NetDb.h use shared pointers 8 years ago
NetDbRequests.cpp fixed race condition 8 years ago
NetDbRequests.h fixed race condition 8 years ago
Profiling.cpp copy ellimination for ranges #part1 8 years ago
Profiling.h * Profiling : move storage from FS.cpp to Profiling.cpp 8 years ago
Queue.h copy ellimination for ranges #part1 8 years ago
README.md android is supported now 8 years ago
Reseed.cpp Adding option to configure reseed URLs 8 years ago
Reseed.h removed unused parameter 9 years ago
RouterContext.cpp show error message in the web-console 8 years ago
RouterContext.h show error message in the web-console 8 years ago
RouterInfo.cpp use atomic_store for addresses' list re-assignment 8 years ago
RouterInfo.h use atomic_store for addresses' list re-assignment 8 years ago
SAM.cpp copy elimination for ranges #part3 8 years ago
SAM.h copy elimination for ranges #part3 8 years ago
SOCKS.cpp tiny commit to check pulling 8 years ago
SOCKS.h initial support for out proxy via local upstream socks proxy 8 years ago
SSU.cpp stop termination timer on shutdown 8 years ago
SSU.h common termination timer for all SSU sessions 8 years ago
SSUData.cpp copy elimination for ranges #part3 8 years ago
SSUData.h eliminate decay timer 8 years ago
SSUSession.cpp show error message in the web-console 8 years ago
SSUSession.h detect clock skew 8 years ago
Signature.cpp fixed race condition at startup 8 years ago
Signature.h changed back to <openssl/ 8 years ago
Streaming.cpp Merge remote-tracking branch 'purple/openssl' into merge_udp_tunnel 8 years ago
Streaming.h change scope of Stream::Terminate 8 years ago
Tag.h fix typo 8 years ago
Timestamp.cpp NTP request 8 years ago
Timestamp.h Timestamp.cpp added 8 years ago
TransitTunnel.cpp * tune log messages 8 years ago
TransitTunnel.h use shared_ptr for transit tunnels 8 years ago
TransportSession.h common termination timer for all SSU sessions 8 years ago
Transports.cpp Merge tag 'tags/2.9.0' 8 years ago
Transports.h copy elimination for ranges #part3 8 years ago
Tunnel.cpp Replaced arrows to HTML code. Deleted tab spaces. 8 years ago
Tunnel.h copy ellimination for ranges #part1 8 years ago
TunnelBase.h cumulative update from bitbucket 9 years ago
TunnelConfig.h copy elimination for ranges #part3 8 years ago
TunnelEndpoint.cpp stop using auto 8 years ago
TunnelEndpoint.h use shared_ptr for I2NP messages through tunnels 9 years ago
TunnelGateway.cpp copy elimination for ranges #part4 8 years ago
TunnelGateway.h random non-zero padding 9 years ago
TunnelPool.cpp implement SetCustomPeerSelector and ensure locking is good 8 years ago
TunnelPool.h implement SetCustomPeerSelector and ensure locking is good 8 years ago
UPnP.cpp copy elimination for ranges #part4 8 years ago
UPnP.h wait for UPnP discovery during startup 8 years ago
api.cpp optional elgamal precomputation for x64 8 years ago
api.h use shared_ptr for log's stream 8 years ago
appveyor.yml Update appveyor.yml 8 years ago
filelist.mk Timestamp.cpp added 8 years ago
i2pd.cpp Merge branch 'upstream-openssl' into restricted_routes 8 years ago
stdafx.cpp Precompiled headers 9 years ago
stdafx.h * drop boost_regex from build deps 8 years ago
util.cpp * util.{cpp,h} : kill with fire i2p::util::http (#314, closes #432) 8 years ago
util.h * util.{cpp,h} : kill with fire i2p::util::http (#314, closes #432) 8 years ago
version.h 2.9.0 8 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.