| 54 | } |
| 55 | |
| 56 | void StartI2P (std::shared_ptr<std::ostream> logStream) |
| 57 | { |
| 58 | if (logStream) |
| 59 | i2p::log::Logger().SendTo (logStream); |
| 60 | else |
| 61 | i2p::log::Logger().SendTo (i2p::fs::DataDirPath (i2p::fs::GetAppName () + ".log")); |
| 62 | i2p::log::Logger().Start (); |
| 63 | i2p::transport::InitTransports (); |
| 64 | LogPrint(eLogInfo, "API: Starting NetDB"); |
| 65 | i2p::data::netdb.Start(); |
| 66 | LogPrint(eLogInfo, "API: Starting Transports"); |
| 67 | i2p::transport::transports.Start(); |
| 68 | LogPrint(eLogInfo, "API: Starting Tunnels"); |
| 69 | i2p::tunnel::tunnels.Start(); |
| 70 | LogPrint(eLogInfo, "API: Starting Router context"); |
| 71 | i2p::context.Start(); |
| 72 | } |
| 73 | |
| 74 | void StopI2P () |
| 75 | { |
no test coverage detected