Commit Graph

10818 Commits

Author SHA1 Message Date
Thomas Winget f0b4138f1f various changes to runtime checkpoint updating
json checkpoints will be checked every 10 minutes, dns every 60.

json checkpoints always enforced, dns still with flag.

conflicting checkpoints is hard fail, but soft if dns enforce flag not
set and dns checkpoints are wonky.
2014-09-30 16:21:37 -04:00
Thomas Winget 7568f89c55 Fixed segfault with checkpoints loading
Bounds checking on blockchain_storage' m_blocks.size() when validating
against checkpoints.  Also moved initial json & DNS checkpoints load to
after blockchain init.
2014-09-30 16:21:37 -04:00
Thomas Winget b261d9207b DNS checkpoint updating added, and daemon flag to enforce them
The daemon should now check for updated checkpoints from
checkpoints.moneropulse.org as well as from the configured json file
every ~1hr (and on launch).

The daemon now has a flag to enable enforcing these checkpoints (rather
    than just printing a warning when they fail).

TODO: an easily configurable list of DNS servers to check for
checkpoints as opposed to the hard-coded "checkpoints.moneropulse.org"
2014-09-30 16:21:37 -04:00
Thomas Winget 30caebfce3 reload checkpoints file every ~hr and print if any fail
also some other minor bug squashing and code formatting
2014-09-30 16:21:37 -04:00
Thomas Winget 0e1449135d updated DNSResolver/things that use it for DNSSEC
Note: DNSResolver does not yet *use* DNSSEC, but rather this commit is
preparation for including DNSSEC validation.  The function in
src/wallet/wallet2.cpp that uses DNSResolver still needs its parameters
updated accordingly.
2014-09-30 16:21:37 -04:00
Thomas Winget 6f2c2e1c27 Adding an identical existing checkpoint should not error
For checkpoints being read at runtime to work correctly, the checkpoint
add code needs to not return false if a checkpoint is added that already
exists.  In this case, instead return false if the checkpoint is for a
height that already has a checkpoint and the hashes are different.
2014-09-30 16:17:26 -04:00
Oran Juice 423bf69dca
Added attribution to Electrum for their word-lists 2014-09-30 23:53:02 +05:30
Oran Juice 4cbf8d4243
Is forgiving of spelling mistakes beyond the 1st 4 characters. 2014-09-30 23:30:27 +05:30
Oran Juice cf70cc7787
Change seed message to '25' words from '24' words 2014-09-30 18:17:56 +05:30
Riccardo Spagni e00f0551e0
Merge pull request #163
99945a5 dependencies enforced, send que error message log level moved (Riccardo Spagni)
2014-09-30 08:01:47 +02:00
Riccardo Spagni 99945a5c47
dependencies enforced, send que error message log level moved 2014-09-29 20:13:15 +02:00
Oran Juice 4f693d715c
Merge with origin/master 2014-09-28 15:52:05 +05:30
Oran Juice 2b60646c9b
Minor comment changes and code clean-up 2014-09-28 14:10:23 +05:30
Oran Juice 473c9644a9
Default to new style English seed 2014-09-28 13:49:47 +05:30
Oran Juice 230b80a5db
Minor code refactor and comment changes 2014-09-28 13:48:52 +05:30
Oran Juice 8f587ba1c8
CRC Checksum for word seed. Gives a new 25 word seed with checksum if one without checksum is passed. Doxygen comment fix. 2014-09-28 02:29:25 +05:30
Oran Juice f31adbc977
Doxygen comments in 2014-09-27 18:20:15 +05:30
Oran Juice 91aa25e055
Informs about old style mnemonics from older wallet and provides a new one. CMakeLists.txt update. 2014-09-27 17:04:23 +05:30
Oran Juice 262e155bab
Throw error when word list file is empty and quick bug fix 2014-09-27 00:55:21 +05:30
Oran Juice 3c0e87e1b6
Supports wallet restoration 2014-09-26 23:34:35 +05:30
Oran Juice a1ac92e185
Accepts seed language choice from user. 2014-09-25 18:04:30 +05:30
Riccardo Spagni 59a8366bb1 Revert "low risk, potentially varint overflow bug patched thanks to BBR"
This reverts commit 4e2b2b942d.
2014-09-25 08:24:42 +02:00
Thomas Winget 145dc19eeb Merge pull request #160 from tewinget/remove_ldns_dep
Remove ldns dependency
2014-09-24 23:50:51 -04:00
Thomas Winget fab95aef64
Remove LDNS dep and fix a bug in libunbound const correctness fix 2014-09-24 23:45:01 -04:00
Thomas Winget 2248124453 Removed ldns dependency
ldns dependency was only still around for constants defined in ldns/rr.h,
but those constants are RFC specified DNS constants, and to reduce deps
have been replicated in dns_utils.h instead of including ldns/rr.h.
2014-09-24 22:45:17 -04:00
Riccardo Spagni 4e2b2b942d low risk, potentially varint overflow bug patched thanks to BBR 2014-09-24 22:17:33 -04:00
Riccardo Spagni 5cd77a9f0b
Merge pull request #159
7383574 libunbound has const correctness issues... (Thomas Winget)
2014-09-25 02:17:58 +02:00
Thomas Winget 738357459b
libunbound has const correctness issues... 2014-09-24 20:05:34 -04:00
Tomer Konforty 06a4578bf2 Added ability to read chechpoint hashes from json file in data folder 2014-09-25 00:00:44 +02:00
iamsmooth 9956b68b18 checkpoint 2014-09-24 23:52:40 +02:00
iamsmooth d19cf1f458 checkpoint 2014-09-24 23:52:31 +02:00
iamsmooth c428c29051 checkpoints 2014-09-24 23:52:26 +02:00
iamsmooth b1d586af4b checkpoint 2014-09-24 23:52:20 +02:00
iamsmooth 400f1016dd checkpoints 2014-09-24 23:52:13 +02:00
Riccardo Spagni dda5a03146
fixed FreeBSD miniupnpc niggly 2014-09-24 21:23:23 +02:00
Riccardo Spagni 524eae58cc
never use the baked-in miniupnpc on FreeBSD because explosions 2014-09-24 20:57:09 +02:00
Riccardo Spagni f93de2f553
fixed unbound libs in test 2014-09-24 20:42:54 +02:00
Riccardo Spagni bff1f9d4c4
redo FindUnbound.cmake 2014-09-24 20:38:24 +02:00
Riccardo Spagni 71f4b10b15
fixed cmake folder 2014-09-24 20:09:30 +02:00
Riccardo Spagni 777d1ac930
added tomerkon's GPG key, cmake folder fix 2014-09-24 20:08:50 +02:00
Oran Juice 26ea53d461
Copies word lists directory to the location of the executable 2014-09-24 22:44:36 +05:30
Riccardo Spagni d1a7f699c6
use boost::asio::ip::address because cross-platform plz 2014-09-24 14:45:54 +02:00
Thomas Winget 1e193d687d temp commit 2014-09-24 09:13:18 +02:00
Thomas Winget 1dece111cc Added function to check syntax of URL for DNS lookup
For now, simply checks for '.' character, but that will be easy to
change in the future if necessary/desired.
2014-09-23 22:59:57 +02:00
Thomas Winget 24f325a33d
Fixed artifacts from cherry-picking devel->master 2014-09-23 22:59:47 +02:00
Thomas Winget 5bd343778f Fixed CMake search for libunbound
As it turns out, some of CMake's built-in modules for detecting headers
and libraries don't work if you have certain compiler flags set, such as
-Werror=old-style-definition, as they do "int main()" rather than
"int main(void)".  Having CMake search for libs before compiler flags
are set alleviates this issue, and I believe the underlying issue will
be fixed in future releases of CMake.
2014-09-23 22:58:31 +02:00
Thomas Winget c14c7e1683 change to allow (at least a bit) for multiple TXT records 2014-09-23 22:58:28 +02:00
Thomas Winget f437cb58bf Simplewallet should now resolve urls to addresses
Simplewallet should now do a DNS query on an address if it fails to
convert the given string to a binary representation of an address
(base58->binary).  It will prompt the user, telling of what the "url"
passed was, what monero address it translated to, and whether or not
DNSSEC validation was a success, and ask for a confirmation that these
are all acceptable.
2014-09-23 22:58:25 +02:00
Thomas Winget a5757a628f Monero addres from DNS TXT record implemented, tests pass
Still need to deal with DNSSEC and optional fields in the TXT record.
2014-09-23 22:58:21 +02:00
Thomas Winget 3fb0fc020f seed node DNS code updated to use DNSResolver
Also implemented rudimentary IPv6 support, but commented it out because
it's not widely supported by ISPs for now, and thus is not currently
supported by Monero.
2014-09-23 22:58:17 +02:00