Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Even more minimal version #4

Closed
wants to merge 47 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
8ac5011
Use `genesis_tx` parameter in `generate_genesis_block`. /monero#3261
jeandudey Feb 14, 2018
f0a263a
Fix Windows build /monero#2994
dEBRUYNE-1 Dec 23, 2017
4aec10e
unit_tests: added gtest utility ASSERT_EQ_MAP for easily testing key-…
stoffu Feb 9, 2018
f32e89a
rpc: default do_not_relay to false in sendrawtransaction /monero#3136
stoffu Feb 7, 2018
b83b81b
epee get_ns_count: cast to uint64_t before multiplying 10^9 to avoid …
stoffu Feb 8, 2018
cfbe05e
fix some link errors in debug mode for macos /monero#2985
stoffu Dec 21, 2017
8caef32
wallet2: don't throw when spent amount is inconsistent /monero#3246
stoffu Feb 10, 2018
dcd8dea
wallet2: don't store invalid key image when watch-only /monero#3246
stoffu Feb 12, 2018
290ba39
wallet-api: added Utils::onStartup /monero#2952
stoffu Dec 18, 2017
ca7feb7
wallet2: fix sweep_all sending an atomic unit /monero#3130
moneromooo-monero Jan 15, 2018
ba5560f
simplewallet: single out 0 amount destinations as dummy ones /monero#…
moneromooo-monero Jan 15, 2018
f1b7bbe
simplewallet: set seed language when restoring from english-old seed …
stoffu Feb 25, 2018
19ad61f
wallet api: when restoring from EnglishOld, set language to English /…
stoffu Feb 25, 2018
ce9ff2e
Bootstrap daemon /monero#3165
stoffu Jan 20, 2018
2c6a45c
Add a chacha20 variant to go with chacha8 /monero#2895
moneromooo-monero Dec 7, 2017
42a1c12
wallet2: switch to chacha20 instead of chacha8 /monero#2895
moneromooo-monero Dec 7, 2017
0f7b46c
Remove is_pod trait, and replace with is_standard_layout requirement …
vtnerd Dec 20, 2017
52c15d6
epee: remove dependency on common /monero#2985
moneromooo-monero Dec 21, 2017
279b707
move memwipe to epee to avoid common<->crypto circular dependencies /…
moneromooo-monero Dec 21, 2017
e04099c
hardfork: fix get_earliest_ideal_height_for_version() to support non-…
stoffu Mar 20, 2018
311a12d
unit_tests/hardfork: add tests for check_for_height() /monero#3444
stoffu Mar 20, 2018
85e790a
hardfork: fix get_next_version() /monero#3444
stoffu Mar 20, 2018
f564131
unit_tests/hardfork: add tests for get_voting_info() /monero#3444
stoffu Mar 20, 2018
3b8bf93
core: add get_earliest_ideal_height_for_version() /monero#3450
stoffu Mar 20, 2018
7e60452
Change executable names
stoffu Feb 7, 2018
4f711db
Replace string Monero with Aeon for user visible parts and some other…
stoffu Feb 27, 2018
c02b09e
Disable DNS checkpoints for now
stoffu Feb 20, 2018
f42344c
Principal changes
stoffu Dec 27, 2017
04d3f27
Lower mining priority for anon-impairing (<2 mixins) tx (c6432ac) + M…
stoffu Feb 7, 2018
6b45c52
Multisig for pre-ringct (unofficial, disabled)
stoffu Feb 19, 2018
8217da2
Monero Cryptonight variants, and add one for v7 /monero#3253
moneromooo-monero Feb 7, 2018
2351800
slow-hash: optimized version /monero#3253
SChernykh Feb 16, 2018
80de15a
tweaks to the monerov1 cryptonight algorithm /monero#3253
vtnerd Feb 27, 2018
32da5f8
Remove CRYPTONOTE_BLOCK_GRANTED_FULL_REWARD_ZONE_V2
stoffu Mar 19, 2018
40dc8ab
Revert /monero#2023: Remove 1.25x multiplier from tx_pool
stoffu Mar 19, 2018
951660d
Remove BLOCKS_SYNCHRONIZING_DEFAULT_COUNT_PRE_V4
stoffu Mar 19, 2018
735e9a4
blockchain: remove sorted ins
stoffu Mar 19, 2018
696d6e0
Remove minimum mixin 4
stoffu Mar 19, 2018
70f6bc5
Remove enforce rct
stoffu Mar 19, 2018
f740ef3
Disable RingCT by #defining HF_VERSION_ALLOW_RCT 255 which replaces h…
stoffu Mar 19, 2018
1c4e8b8
Allow bulletproofs as soon as RingCT is allowed
stoffu Mar 19, 2018
9fa6cc0
simplewallet: disable fee command
stoffu Mar 19, 2018
e599f05
blockchain: require miner tx to have well behaved outs /monero#763
stoffu Mar 20, 2018
6ff68d7
get_block_longhash: on testnet etc, switch to cn-lite at v2
stoffu Mar 20, 2018
4f36837
Allow 10% of txs in a block to be of ringsize 1
stoffu Mar 20, 2018
b35e265
wallet: replace default mixin semantics with default ring size semantics
stoffu Mar 20, 2018
40c3949
Set testnet v7 fork height to 44000 (24 March 2018)
stoffu Mar 20, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 6 additions & 10 deletions src/common/memwipe.h → contrib/epee/include/memwipe.h
Original file line number Diff line number Diff line change
Expand Up @@ -67,18 +67,14 @@ namespace tools {
}
};

template<typename T>
T& unwrap(scrubbed<T>& src) { return src; }

template<typename T>
const T& unwrap(scrubbed<T> const& src) { return src; }

template <class T, size_t N>
using scrubbed_arr = scrubbed<std::array<T, N>>;
} // namespace tools

// Partial specialization for std::is_pod<tools::scrubbed<T>> so that it can
// pretend to be the containted type in those contexts.
namespace std
{
template<class t_scrubbee>
struct is_pod<tools::scrubbed<t_scrubbee>> {
static const bool value = is_pod<t_scrubbee>::value;
};
}

#endif // __cplusplus
8 changes: 6 additions & 2 deletions contrib/epee/include/misc_os_dependent.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,10 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
#ifdef _WIN32
#include <Winsock2.h>
#endif

#ifdef WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
Expand Down Expand Up @@ -71,13 +75,13 @@ namespace misc_utils
clock_get_time(cclock, &mts);
mach_port_deallocate(mach_task_self(), cclock);

return (mts.tv_sec * 1000000000) + (mts.tv_nsec);
return ((uint64_t)mts.tv_sec * 1000000000) + (mts.tv_nsec);
#else
struct timespec ts;
if(clock_gettime(CLOCK_MONOTONIC, &ts) != 0) {
return 0;
}
return (ts.tv_sec * 1000000000) + (ts.tv_nsec);
return ((uint64_t)ts.tv_sec * 1000000000) + (ts.tv_nsec);
#endif
}

Expand Down
7 changes: 5 additions & 2 deletions contrib/epee/include/net/http_auth.h
Original file line number Diff line number Diff line change
Expand Up @@ -71,8 +71,8 @@ namespace net_utils
std::uint32_t counter;
};

http_server_auth() : user() {}
http_server_auth(login credentials);
http_server_auth() : user(), rng() {}
http_server_auth(login credentials, std::function<void(size_t, uint8_t*)> r);

//! \return Auth response, or `boost::none` iff `request` had valid auth.
boost::optional<http_response_info> get_response(const http_request_info& request)
Expand All @@ -81,10 +81,13 @@ namespace net_utils
return do_get_response(request);
return boost::none;
}

private:
boost::optional<http_response_info> do_get_response(const http_request_info& request);

boost::optional<session> user;

std::function<void(size_t, uint8_t*)> rng;
};

//! Implements RFC 2617 digest auth. Digests from RFC 7616 can be added.
Expand Down
3 changes: 2 additions & 1 deletion contrib/epee/include/net/http_protocol_handler.h
Original file line number Diff line number Diff line change
Expand Up @@ -160,6 +160,7 @@ namespace net_utils
struct custum_handler_config: public http_server_config
{
i_http_server_handler<t_connection_context>* m_phandler;
std::function<void(size_t, uint8_t*)> rng;
};

/************************************************************************/
Expand All @@ -176,7 +177,7 @@ namespace net_utils
: simple_http_connection_handler<t_connection_context>(psnd_hndlr, config),
m_config(config),
m_conn_context(conn_context),
m_auth(m_config.m_user ? http_server_auth{*m_config.m_user} : http_server_auth{})
m_auth(m_config.m_user ? http_server_auth{*m_config.m_user, config.rng} : http_server_auth{})
{}
inline bool handle_request(const http_request_info& query_info, http_response_info& response)
{
Expand Down
3 changes: 2 additions & 1 deletion contrib/epee/include/net/http_server_impl_base.h
Original file line number Diff line number Diff line change
Expand Up @@ -55,13 +55,14 @@ namespace epee
: m_net_server(external_io_service)
{}

bool init(const std::string& bind_port = "0", const std::string& bind_ip = "0.0.0.0",
bool init(std::function<void(size_t, uint8_t*)> rng, const std::string& bind_port = "0", const std::string& bind_ip = "0.0.0.0",
std::vector<std::string> access_control_origins = std::vector<std::string>(),
boost::optional<net_utils::http::login> user = boost::none)
{

//set self as callback handler
m_net_server.get_config_object().m_phandler = static_cast<t_child_class*>(this);
m_net_server.get_config_object().rng = std::move(rng);

//here set folder for hosting reqests
m_net_server.get_config_object().m_folder = "";
Expand Down
3 changes: 0 additions & 3 deletions contrib/epee/include/net/network_throttle.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -99,8 +99,6 @@ struct calculate_times_struct {
typedef calculate_times_struct calculate_times_struct;


namespace cryptonote { class cryptonote_protocol_handler_base; } // a friend class // TODO friend not working

/***
@brief Access to simple throttles, with singlton to access global network limits
*/
Expand All @@ -117,7 +115,6 @@ class network_throttle_manager {
static boost::mutex m_lock_get_global_throttle_inreq;
static boost::mutex m_lock_get_global_throttle_out;

friend class cryptonote::cryptonote_protocol_handler_base; // FRIEND - to directly access global throttle-s. !! REMEMBER TO USE LOCKS!
friend class connection_basic; // FRIEND - to directly access global throttle-s. !! REMEMBER TO USE LOCKS!
friend class connection_basic_pimpl; // ditto

Expand Down
2 changes: 1 addition & 1 deletion contrib/epee/include/span.h
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ namespace epee
template<typename T>
constexpr bool has_padding() noexcept
{
return !std::is_pod<T>::value || alignof(T) != 1;
return !std::is_standard_layout<T>() || alignof(T) != 1;
}

//! \return Cast data from `src` as `span<const std::uint8_t>`.
Expand Down
9 changes: 8 additions & 1 deletion contrib/epee/include/string_tools.h
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@
#include <boost/lexical_cast.hpp>
#include <boost/algorithm/string/predicate.hpp>
#include "hex.h"
#include "memwipe.h"
#include "span.h"
#include "warnings.h"

Expand Down Expand Up @@ -330,7 +331,7 @@ POP_WARNINGS
template<class t_pod_type>
std::string pod_to_hex(const t_pod_type& s)
{
static_assert(std::is_pod<t_pod_type>::value, "expected pod type");
static_assert(std::is_standard_layout<t_pod_type>(), "expected standard layout type");
return to_hex::string(as_byte_span(s));
}
//----------------------------------------------------------------------------
Expand All @@ -351,6 +352,12 @@ POP_WARNINGS
return true;
}
//----------------------------------------------------------------------------
template<class t_pod_type>
bool hex_to_pod(const std::string& hex_str, tools::scrubbed<t_pod_type>& s)
{
return hex_to_pod(hex_str, unwrap(s));
}
//----------------------------------------------------------------------------
bool validate_hex(uint64_t length, const std::string& str);
//----------------------------------------------------------------------------
inline std::string get_extension(const std::string& str)
Expand Down
7 changes: 5 additions & 2 deletions contrib/epee/src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,16 @@
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

add_library(epee STATIC hex.cpp http_auth.cpp mlog.cpp net_utils_base.cpp string_tools.cpp wipeable_string.cpp
add_library(epee STATIC hex.cpp http_auth.cpp mlog.cpp net_utils_base.cpp string_tools.cpp wipeable_string.cpp memwipe.c
connection_basic.cpp network_throttle.cpp network_throttle-detail.cpp)
if (USE_READLINE AND GNU_READLINE_FOUND)
add_library(epee_readline STATIC readline_buffer.cpp)
endif()

if(HAVE_C11)
SET_PROPERTY(SOURCE memwipe.c PROPERTY COMPILE_FLAGS -std=c11)
endif()

# Build and install libepee if we're building for GUI
if (BUILD_GUI_DEPS)
if(IOS)
Expand All @@ -49,7 +53,6 @@ endif()

target_link_libraries(epee
PUBLIC
cncrypto
easylogging
${Boost_FILESYSTEM_LIBRARY}
PRIVATE
Expand Down
1 change: 0 additions & 1 deletion contrib/epee/src/connection_basic.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,6 @@

// TODO:
#include "net/network_throttle-detail.hpp"
#include "cryptonote_core/cryptonote_core.h"

#undef MONERO_DEFAULT_LOG_CATEGORY
#define MONERO_DEFAULT_LOG_CATEGORY "net.p2p"
Expand Down
7 changes: 3 additions & 4 deletions contrib/epee/src/http_auth.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,6 @@
#include <tuple>
#include <type_traits>

#include "crypto/crypto.h"
#include "hex.h"
#include "md5_l.h"
#include "string_coding.h"
Expand Down Expand Up @@ -711,8 +710,8 @@ namespace epee
{
namespace http
{
http_server_auth::http_server_auth(login credentials)
: user(session{std::move(credentials)}) {
http_server_auth::http_server_auth(login credentials, std::function<void(size_t, uint8_t*)> r)
: user(session{std::move(credentials)}), rng(std::move(r)) {
}

boost::optional<http_response_info> http_server_auth::do_get_response(const http_request_info& request)
Expand Down Expand Up @@ -746,7 +745,7 @@ namespace epee
user->counter = 0;
{
std::array<std::uint8_t, 16> rand_128bit{{}};
crypto::rand(rand_128bit.size(), rand_128bit.data());
rng(rand_128bit.size(), rand_128bit.data());
user->nonce = string_encoding::base64_encode(rand_128bit.data(), rand_128bit.size());
}
return create_digest_response(user->nonce, is_stale);
Expand Down
File renamed without changes.
4 changes: 2 additions & 2 deletions contrib/epee/src/mlog.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ void mlog_configure(const std::string &filename_base, bool console, const std::s
el::Configurations c;
c.setGlobally(el::ConfigurationType::Filename, filename_base);
c.setGlobally(el::ConfigurationType::ToFile, "true");
const char *log_format = getenv("MONERO_LOG_FORMAT");
const char *log_format = getenv("AEON_LOG_FORMAT");
if (!log_format)
log_format = MLOG_BASE_FORMAT;
c.setGlobally(el::ConfigurationType::Format, log_format);
Expand All @@ -138,7 +138,7 @@ void mlog_configure(const std::string &filename_base, bool console, const std::s
rename(name, rname.c_str());
});
mlog_set_common_prefix();
const char *monero_log = getenv("MONERO_LOGS");
const char *monero_log = getenv("AEON_LOGS");
if (!monero_log)
{
monero_log = get_default_categories(0);
Expand Down
1 change: 1 addition & 0 deletions external/easylogging++/ea_config.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,4 @@
#endif
#define ELPP_DISABLE_DEFAULT_CRASH_HANDLING
#define ELPP_NO_CHECK_MACROS
#define ELPP_WINSOCK2
2 changes: 1 addition & 1 deletion src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ endif()
add_subdirectory(cryptonote_protocol)
if(NOT IOS)
add_subdirectory(simplewallet)
add_subdirectory(gen_multisig)
# add_subdirectory(gen_multisig) # Multisig for pre-RingCT is not officially supported
add_subdirectory(daemonizer)
add_subdirectory(daemon)
add_subdirectory(blockchain_utilities)
Expand Down
4 changes: 2 additions & 2 deletions src/blockchain_utilities/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ endif()

set_property(TARGET blockchain_import
PROPERTY
OUTPUT_NAME "monero-blockchain-import")
OUTPUT_NAME "aeon-blockchain-import")
install(TARGETS blockchain_import DESTINATION bin)

monero_add_executable(blockchain_export
Expand All @@ -114,6 +114,6 @@ target_link_libraries(blockchain_export

set_property(TARGET blockchain_export
PROPERTY
OUTPUT_NAME "monero-blockchain-export")
OUTPUT_NAME "aeon-blockchain-export")
install(TARGETS blockchain_export DESTINATION bin)

4 changes: 2 additions & 2 deletions src/blockchain_utilities/blockchain_export.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -99,12 +99,12 @@ int main(int argc, char* argv[])

if (command_line::get_arg(vm, command_line::arg_help))
{
std::cout << "Monero '" << MONERO_RELEASE_NAME << "' (v" << MONERO_VERSION_FULL << ")" << ENDL << ENDL;
std::cout << "Aeon '" << MONERO_RELEASE_NAME << "' (v" << MONERO_VERSION_FULL << ")" << ENDL << ENDL;
std::cout << desc_options << std::endl;
return 1;
}

mlog_configure(mlog_get_default_log_path("monero-blockchain-export.log"), true);
mlog_configure(mlog_get_default_log_path("aeon-blockchain-export.log"), true);
if (!command_line::is_arg_defaulted(vm, arg_log_level))
mlog_set_log(command_line::get_arg(vm, arg_log_level).c_str());
else
Expand Down
4 changes: 2 additions & 2 deletions src/blockchain_utilities/blockchain_import.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -642,7 +642,7 @@ int main(int argc, char* argv[])

if (command_line::get_arg(vm, command_line::arg_help))
{
std::cout << "Monero '" << MONERO_RELEASE_NAME << "' (v" << MONERO_VERSION_FULL << ")" << ENDL << ENDL;
std::cout << "Aeon '" << MONERO_RELEASE_NAME << "' (v" << MONERO_VERSION_FULL << ")" << ENDL << ENDL;
std::cout << desc_options << std::endl;
return 1;
}
Expand Down Expand Up @@ -675,7 +675,7 @@ int main(int argc, char* argv[])
m_config_folder = command_line::get_arg(vm, data_dir_arg);
db_arg_str = command_line::get_arg(vm, arg_database);

mlog_configure(mlog_get_default_log_path("monero-blockchain-import.log"), true);
mlog_configure(mlog_get_default_log_path("aeon-blockchain-import.log"), true);
if (!command_line::is_arg_defaulted(vm, arg_log_level))
mlog_set_log(command_line::get_arg(vm, arg_log_level).c_str());
else
Expand Down
Binary file modified src/blocks/checkpoints.dat
Binary file not shown.
50 changes: 16 additions & 34 deletions src/checkpoints/checkpoints.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -163,42 +163,23 @@ namespace cryptonote
{
if (testnet)
{
ADD_CHECKPOINT(0, "48ca7cd3c8de5b6a4d53d2861fbdaedca141553559f9be9520068053cda8430b");
ADD_CHECKPOINT(1000000, "46b690b710a07ea051bc4a6b6842ac37be691089c0f7758cfeec4d5fc0b4a258");
ADD_CHECKPOINT(0, "d0ae70ae5f35b27b3a4b68ae4f78eeca9989174eebe8a1e55cd139fe9b797223");
ADD_CHECKPOINT(1, "10d61dadc6f981bea93eea9d0c3ad8eb0c20e5fdc3db0e1722f18e60c83394f8");
ADD_CHECKPOINT(10, "67860367465a01e3601ed7e9f01c5339e3cd955022809c6bce33c754a29bcb7d");
ADD_CHECKPOINT(100, "960bb09aaa28230126796dc4e658cb8880ac679058203cd5880b8b853b9204d4");
return true;
}
ADD_CHECKPOINT(1, "771fbcd656ec1464d3a02ead5e18644030007a0fc664c0a964d30922821a8148");
ADD_CHECKPOINT(10, "c0e3b387e47042f72d8ccdca88071ff96bff1ac7cde09ae113dbb7ad3fe92381");
ADD_CHECKPOINT(100, "ac3e11ca545e57c49fca2b4e8c48c03c23be047c43e471e1394528b1f9f80b2d");
ADD_CHECKPOINT(1000, "5acfc45acffd2b2e7345caf42fa02308c5793f15ec33946e969e829f40b03876");
ADD_CHECKPOINT(10000, "c758b7c81f928be3295d45e230646de8b852ec96a821eac3fea4daf3fcac0ca2");
ADD_CHECKPOINT(22231, "7cb10e29d67e1c069e6e11b17d30b809724255fee2f6868dc14cfc6ed44dfb25");
ADD_CHECKPOINT(29556, "53c484a8ed91e4da621bb2fa88106dbde426fe90d7ef07b9c1e5127fb6f3a7f6");
ADD_CHECKPOINT(50000, "0fe8758ab06a8b9cb35b7328fd4f757af530a5d37759f9d3e421023231f7b31c");
ADD_CHECKPOINT(80000, "a62dcd7b536f22e003ebae8726e9e7276f63d594e264b6f0cd7aab27b66e75e3");
ADD_CHECKPOINT(202612, "bbd604d2ba11ba27935e006ed39c9bfdd99b76bf4a50654bc1e1e61217962698");
ADD_CHECKPOINT(202613, "e2aa337e78df1f98f462b3b1e560c6b914dec47b610698b7b7d1e3e86b6197c2");
ADD_CHECKPOINT(202614, "c29e3dc37d8da3e72e506e31a213a58771b24450144305bcba9e70fa4d6ea6fb");
ADD_CHECKPOINT(205000, "5d3d7a26e6dc7535e34f03def711daa8c263785f73ec1fadef8a45880fde8063");
ADD_CHECKPOINT(220000, "9613f455933c00e3e33ac315cc6b455ee8aa0c567163836858c2d9caff111553");
ADD_CHECKPOINT(230300, "bae7a80c46859db355556e3a9204a337ae8f24309926a1312323fdecf1920e61");
ADD_CHECKPOINT(230700, "93e631240ceac831da1aebfc5dac8f722c430463024763ebafa888796ceaeedf");
ADD_CHECKPOINT(231350, "b5add137199b820e1ea26640e5c3e121fd85faa86a1e39cf7e6cc097bdeb1131");
ADD_CHECKPOINT(232150, "955de8e6b6508af2c24f7334f97beeea651d78e9ade3ab18fec3763be3201aa8");
ADD_CHECKPOINT(249380, "654fb0a81ce3e5caf7e3264a70f447d4bd07586c08fa50f6638cc54da0a52b2d");
ADD_CHECKPOINT(460000, "75037a7aed3e765db96c75bcf908f59d690a5f3390baebb9edeafd336a1c4831");
ADD_CHECKPOINT(500000, "2428f0dbe49796be05ed81b347f53e1f7f44aed0abf641446ec2b94cae066b02");
ADD_CHECKPOINT(600000, "f5828ebf7d7d1cb61762c4dfe3ccf4ecab2e1aad23e8113668d981713b7a54c5");
ADD_CHECKPOINT(700000, "12be9b3d210b93f574d2526abb9c1ab2a881b479131fd0d4f7dac93875f503cd");
ADD_CHECKPOINT(825000, "56503f9ad766774b575be3aff73245e9d159be88132c93d1754764f28da2ff60");
ADD_CHECKPOINT(900000, "d9958d0e7dcf91a5a7b11de225927bf7efc6eb26240315ce12372be902cc1337");
ADD_CHECKPOINT(913193, "5292d5d56f6ba4de33a58d9a34d263e2cb3c6fee0aed2286fd4ac7f36d53c85f");
ADD_CHECKPOINT(1000000, "a886ef5149902d8342475fee9bb296341b891ac67c4842f47a833f23c00ed721");
ADD_CHECKPOINT(1100000, "3fd720c5c8b3072fc1ccda922dec1ef25f9ed88a1e6ad4103d0fe00b180a5903");
ADD_CHECKPOINT(1150000, "1dd16f626d18e1e988490dfd06de5920e22629c972c58b4d8daddea0038627b2");
ADD_CHECKPOINT(1200000, "fa7d13a90850882060479d100141ff84286599ae39c3277c8ea784393f882d1f");
ADD_CHECKPOINT(1300000, "31b34272343a44a9f4ac7de7a8fcf3b7d8a3124d7d6870affd510d2f37e74cd0");
ADD_CHECKPOINT(1390000, "a8f5649dd4ded60eedab475f2bec8c934681c07e3cf640e9be0617554f13ff6c");
ADD_CHECKPOINT(1, "1440a20f078bf3264822234b347f8382606577d73d4e9d3cb7296d73889bc421");
ADD_CHECKPOINT(100, "6dd13aaab16679f49ee6b2b75c7dc99b1fd09ab2282b18cb4b55b73110655742");
ADD_CHECKPOINT(1000, "bc6458452fd0575a314089bf302f6fd68ebaa2d689c42f3365293b96bbdf1f25");
ADD_CHECKPOINT(10000, "1ac1ebd25baf0d6ec593daa3389f1aa7e860ff2cc29f3cf1be586d245b379da4");
ADD_CHECKPOINT(15000, "15567af42afc1ed00538f53b5e3822d421e3ed6372ca79f4ea4e3e3bab709a87");
ADD_CHECKPOINT(175500, "3f7dd748b3b863b04654d87a387f2b65a365f467188971f3192eab2368e64a35");
ADD_CHECKPOINT(450000, "f69a6e57c4dd5df2f492c9d31c50f11aad2c25a64d540ce5f5d11b572aec8ab7");
ADD_CHECKPOINT(540000, "94e19cf9d5a16ae90f67c321f8376b87da21d6d6c2cb0957b9ab558dca66c1dc");
ADD_CHECKPOINT(592001, "e8bc936b287a9c426a15cf127624b064c88e6d37655cc87f9a62cf1623c62385");
ADD_CHECKPOINT(798358, "804c7fe07511d9387e7cda534c9e8b644d406d8d0ff299799a8177850d4e75a0");
ADD_CHECKPOINT(871000, "99f7e5460da3fb4e2b15214017b0a17ff0294823ad852259ff837f0ffeeb90f0");


return true;
Expand Down Expand Up @@ -238,6 +219,7 @@ namespace cryptonote

bool checkpoints::load_checkpoints_from_dns(bool testnet)
{
return true; // TODO: setup DNS checkpoints for Aeon
std::vector<std::string> records;

// All four MoneroPulse domains have DNSSEC on and valid
Expand Down
Loading