Age | Commit message (Collapse) | Author |
|
|
|
|
|
Move external block import to separate thread
|
|
Check for canonical public keys and signatures
|
|
|
|
|
|
|
|
This reverts commit 199d88cf901866f3c2fa2b5bd83074d11ebad02c, reversing
changes made to 65bc1573e73791c26472c3177732b7d167aa5bec.
License is worse instead of better. Will only accept public domain and
MIT-licensed icons from now on.
|
|
Non-GPL Icons, v2
|
|
|
|
regenerate it, changed the assets attribution, removed old spinner + old spinner's sources.
|
|
- that flag is not needed when using "-fstack-protector-all", so remove it
(see:
http://stackoverflow.com/questions/1629685/when-and-how-to-use-gccs-stack-protection-feature)
|
|
Translation update for Bitcoin-Qt 0.7.1
|
|
- this patch enables several new GCC compiler hardening options that
allows us to increase the security of our binaries (see:
https://wiki.debian.org/Hardening)
-D_FORTIFY_SOURCE=2:
Enables compile-time protection against static sized buffer overflows.
-Wl,-z,relro -Wl,-z,now:
Enables full RELRO (RELocation Read-Only), which is a generic mitigation
technique to harden the data sections of an ELF binary/process. See:
http://isisblogs.poly.edu/2011/06/01/relro-relocation-read-only/ for
further details.
|
|
|
|
|
|
Fix a use-after-free problem in initialization (#1920)
|
|
Don't store the result of c_str().
Luckily, this only affects logging, though it could crash or leak
sensitive data to the log in rare cases.
|
|
Use fdatasync instead of fsync on supported platforms
|
|
Remove I2P support from netbase
|
|
move most explicit getters in optionsmodel to header
|
|
fix wrong (signed/unsigned) printf format specifier in bitcoinrpc.cpp
|
|
get rid of strlcpy.h
|
|
|
|
|
|
|
|
|
|
|
|
change Q_WS_MAC -> Q_OS_MAC (Qt5 compatibility)
|
|
P2P: Do not request blocks from peers with fewer blocks than us
|
|
Fat-fingered on github, and merged this too early.
This reverts commit 22f9b069035c9ba0416a62714db167eea5ba762f.
|
|
Send 'mempool' P2P command at the start of each P2P session
|
|
|
|
Corrupt wallets used to cause a DB_RUNRECOVERY uncaught exception and a
crash. This commit does three things:
1) Runs a BDB verify early in the startup process, and if there is a
low-level problem with the database:
+ Moves the bad wallet.dat to wallet.timestamp.bak
+ Runs a 'salvage' operation to get key/value pairs, and
writes them to a new wallet.dat
+ Continues with startup.
2) Much more tolerant of serialization errors. All errors in deserialization
are reported by tolerated EXCEPT for errors related to reading keypairs
or master key records-- those are reported and then shut down, so the user
can get help (or recover from a backup).
3) Adds a new -salvagewallet option, which:
+ Moves the wallet.dat to wallet.timestamp.bak
+ extracts ONLY keypairs and master keys into a new wallet.dat
+ soft-sets -rescan, to recreate transaction history
This was tested by randomly corrupting testnet wallets using a little
python script I wrote (https://gist.github.com/3812689)
|
|
Before, opening a -datadir that was created with a new
version of Berkeley DB would result in an un-caught DB_RUNRECOVERY
exception.
After these changes, the error is caught and the user is told
that there is a problem and is told how to try to recover from
it.
|
|
|
|
Before, opening a -datadir that was created with a new
version of Berkeley DB would result in an un-caught DB_RUNRECOVERY
exception.
After these changes, the error is caught and the user is told
that there is a problem and is told how to try to recover from
it.
|
|
This avoids the case where you read the address data, before noticing it is
the wrong network.
|
|
- I missed that one in my former pull
|
|
- don't rely on the QSettings for cases ProxyUse and ProxySocksVersion and
query the real values via the GetProxy() call
- add a missing "succesful =" for case ProxyUse in ::setData()
|
|
add LOCK() for proxy related data-structures
|
|
|
|
I2P apparently needs 256 bits to store a fully routable address. Garlicat
requires a centralized lookup service to map the 80-bit addresses to fully
routable ones (as far as I understood), so that's not really usable in our
situation.
To support I2P routing and peer exchange for it, another solution is needed.
This will most likely imply a network protocol change, and extension of the
'addr' message.
|
|
Don't use hand-rolled string manipulation routine with a fixed
buffer in the bitcoin core, instead make use of c++ strings and boost.
|
|
- also includes the required bitcoinstrings.cpp update
|
|
Send --help message to stdout i.s.o stderr
|
|
When datadir missing, show messagebox instead of printing error to stderr
|
|
Document RPC error codes
|
|
|
|
|