Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
Check for duplicate txins in CheckTransaction.
|
|
|
|
avoid strAddress + validity checks
|
|
Identify as "Bitcoin + version number" when mapping UPnP port
|
|
Don't listen if on TOR (resolves #441).
|
|
|
|
|
|
Avoid references to addresses using strings, and use CBitcoinAddress
as much as possible. Also added some validity checks on addresses
entered using RPC.
|
|
Makes Bitcoin identify itself as "Bitcoin + version number" instead of
the nondescript "libminiupnpc" when forwarding a port via UPnP.
|
|
|
|
|
|
|
|
Fixes issue #424
|
|
ExtractAddress was called with the keystore as argument in RPC and
UI, limiting results to own keys. This caused empty "address"
fields.
|
|
|
|
|
|
keys indexed by address + introduced CBitcoinaddress
|
|
With the separation of CENT and MIN_TX_FEE, it is now reasonable
to create change outputs between 0.01 and 0.0005, as these are
spendable according to the policy, even though they require a fee
to be paid.
Also, when enough fee was already present, everything can go into
a change output, without further increasing the fee.
|
|
Previously, mapAlreadyAskedFor was read from, but never added to.
The original intent was to use mapAlreadyAskedFor to keep track
of the time an item was requested and "Each retry is 2 minutes
after the last".
This implements that intent.
|
|
Fix typo in CBase58Data::CompareTo
|
|
Split off features unrelated to addresses from CBitcoinAddress to
CBase58Data, so they can be reused.
|
|
Instead of conversion functions between pubkey/uint160/address in
base58.h, have a fully fledged class CBitcoinAddress (CAddress was
already taken) to represent addresses.
|
|
Make CKeyStore's interface work on uint160's instead of pubkeys, so
no separate global mapPubKeys is necessary anymore.
|
|
|
|
|
|
Single DB transactions
|
|
|
|
|
|
Cuts disk activity at startup immensely
|
|
|
|
|
|
Warning fixes
|
|
Bugfix: add autogenerated addresses to address book
|
|
Signed-off-by: Giel van Schijndel <me@mortis.eu>
|
|
[-Wunused-but-set-variable]
Signed-off-by: Giel van Schijndel <me@mortis.eu>
|
|
|
|
|
|
Yes, we might release as v0.4, but let's just do a simple increment
for now.
|
|
|
|
Only declare & define SigIllHandlerSSE2 when its used.
Signed-off-by: Giel van Schijndel <me@mortis.eu>
|
|
Remove several unused variables.
Signed-off-by: Giel van Schijndel <me@mortis.eu>
|
|
Add default cases to opcode switches to assert that they should never
occur.
Signed-off-by: Giel van Schijndel <me@mortis.eu>
|
|
[-Wtautological-compare]
Don't check for a negative parameter count, because not only will it
never happen, it doesn't make any sense either.
Invalid sockets (as returned by socket(2)) are always exactly -1 (not
just negative as negative file descriptors are technically not
prohibited by POSIX) on POSIX systems. Since we store them in SOCKET
(unsigned int), however, that really is ~0U (or MAX_UINT) which happens
to be what INVALID_SOCKET is already defined to, so an additional check
for being negative is not only unnecessary (unsigned integers aren't
*ever* negative) its redundant as well (the INVALID_SOCKET comparison is
enough).
Signed-off-by: Giel van Schijndel <me@mortis.eu>
|
|
parentheses [-Wparentheses]
Don't unnecessarily assign to variables within the *boolean* expression
of a conditional.
Signed-off-by: Giel van Schijndel <me@mortis.eu>
|
|
In the assert()s take advantage of the fact that string constants
("string") are effectively of type 'const char []', which when used in
an expression yield a non-NULL pointer.
An assertion that should always fail can thus be formulated as:
assert(!"fail);
An assertion where a text message should be added to the expression can
be written as such:
assert("message" && expression);
Signed-off-by: Giel van Schijndel <me@mortis.eu>
|
|
[-Wint-to-pointer-cast]
Signed-off-by: Giel van Schijndel <me@mortis.eu>
|