| 595 | } |
| 596 | |
| 597 | static std::string OnionToString(Span<const uint8_t> addr) |
| 598 | { |
| 599 | uint8_t checksum[torv3::CHECKSUM_LEN]; |
| 600 | torv3::Checksum(addr, checksum); |
| 601 | // TORv3 onion_address = base32(PUBKEY | CHECKSUM | VERSION) + ".onion" |
| 602 | prevector<torv3::TOTAL_LEN, uint8_t> address{addr.begin(), addr.end()}; |
| 603 | address.insert(address.end(), checksum, checksum + torv3::CHECKSUM_LEN); |
| 604 | address.insert(address.end(), torv3::VERSION, torv3::VERSION + sizeof(torv3::VERSION)); |
| 605 | return EncodeBase32(address) + ".onion"; |
| 606 | } |
| 607 | |
| 608 | std::string CNetAddr::ToStringIP() const |
| 609 | { |
no test coverage detected