31 #include <boost/utility/string_ref.hpp>
36 #include "net/enums.h"
43 class portable_storage;
80 bool _load(epee::serialization::portable_storage& src, epee::serialization::section* hparent);
83 bool store(epee::serialization::portable_storage&
dest, epee::serialization::section* hparent)
const;
110 static constexpr
bool is_local() noexcept {
return false; }
112 static constexpr epee::net_utils::address_type
get_type_id() noexcept
114 return epee::net_utils::address_type::i2p;
117 static constexpr epee::net_utils::zone
get_zone() noexcept
119 return epee::net_utils::zone::i2p;
128 return lhs.equal(rhs);
133 return !lhs.equal(rhs);
138 return lhs.less(rhs);
b32 i2p address; internal format not condensed/decoded.
Definition: i2p_address.h:52
char host_[61]
Definition: i2p_address.h:54
std::uint16_t port() const noexcept
Definition: i2p_address.h:107
static i2p_address unknown() noexcept
Definition: i2p_address.h:70
i2p_address & operator=(const i2p_address &rhs) noexcept
Definition: i2p_address.cpp:151
bool store(epee::serialization::portable_storage &dest, epee::serialization::section *hparent) const
Store in epee p2p format.
Definition: i2p_address.cpp:139
static constexpr epee::net_utils::address_type get_type_id() noexcept
Definition: i2p_address.h:112
bool equal(const i2p_address &rhs) const noexcept
Definition: i2p_address.cpp:167
bool is_blockable() const noexcept
Definition: i2p_address.h:123
bool is_same_host(const i2p_address &rhs) const noexcept
Definition: i2p_address.cpp:177
std::uint16_t port_
Definition: i2p_address.h:53
bool is_unknown() const noexcept
Definition: i2p_address.cpp:161
static constexpr std::size_t buffer_size() noexcept
Definition: i2p_address.h:61
bool less(const i2p_address &rhs) const noexcept
Definition: i2p_address.cpp:172
static constexpr epee::net_utils::zone get_zone() noexcept
Definition: i2p_address.h:117
static expect< i2p_address > make(boost::string_ref address, std::uint16_t default_port=0)
Definition: i2p_address.cpp:107
std::string str() const
Definition: i2p_address.cpp:182
const char * host_str() const noexcept
Definition: i2p_address.h:104
static constexpr bool is_loopback() noexcept
Definition: i2p_address.h:109
bool _load(epee::serialization::portable_storage &src, epee::serialization::section *hparent)
Load from epee p2p format, and.
Definition: i2p_address.cpp:123
static constexpr bool is_local() noexcept
Definition: i2p_address.h:110
i2p_address() noexcept
An object with port() == 0 and host_str() == unknown_str().
Definition: i2p_address.cpp:99
static const char * unknown_str() noexcept
Definition: i2p_address.cpp:94
const
Definition: build_protob.py:9
Definition: cryptonote_format_utils.h:44
bool operator<(const i2p_address &lhs, const i2p_address &rhs) noexcept
Definition: i2p_address.h:136
bool operator!=(const i2p_address &lhs, const i2p_address &rhs) noexcept
Definition: i2p_address.h:131
bool operator==(const i2p_address &lhs, const i2p_address &rhs) noexcept
Definition: i2p_address.h:126
Definition: binary_utils.h:37
Definition: blockchain_ancestry.cpp:73
CXA_THROW_INFO_T void(* dest)(void *))
Definition: stack_trace.cpp:91