Pieter Wuille
67a42f929b
Network stack refactor
...
This introduces CNetAddr and CService, respectively wrapping an
(IPv6) IP address and an IP+port combination. This functionality used
to be part of CAddress, which also contains network flags and
connection attempt information. These extra fields are however not
always necessary.
These classes, along with logic for creating connections and doing
name lookups, are moved to netbase.{h,cpp}, which does not depend on
headers.h.
Furthermore, CNetAddr is mostly IPv6-ready, though IPv6
functionality is not yet enabled for the application itself.
13 years ago
Wladimir J. van der Laan
7453497ee4
make transaction description read-only (UI fix)
13 years ago
Matt Corallo
f7a9a11391
Fix horrific performance found by gmaxwell.
13 years ago
Gavin Andresen
8677f9c751
I broke -testnet with my TOR option-parsing fixes.
13 years ago
Gavin Andresen
0fcf91ea1e
Fix issue #659 , and cleanup wallet/command-line argument handling a bit
13 years ago
Wladimir J. van der Laan
ecaa91d1df
Fix typo ( #734 )
13 years ago
Pieter Wuille
a75d7066b8
Fix some address-handling deadlocks
...
Made three critical blocks for cs_mapAddresses smaller, and moved
writing to the database out of them. This should also improve the
concurrency of the code.
13 years ago
coderrr
6ec76ca09e
make sure IsMine only returns true when we own all keys
13 years ago
Wladimir J. van der Laan
56c6e3696d
Fix transaction type in UI: not all tx'es with "from"/"to" field are necessarily IP tx'es
...
- Also, prepare for OP_EVAL by calling all transactions without bitcoin address "SendToOther"/"RecvFromOther",
(IP tx'es are so rare they can be put together with funky EV_EVAL scripts)
13 years ago
Gavin Andresen
6d6d392b22
Fixed OP_EVAL recursion unit test, checks for both infinite and exactly-3-deep recursion
13 years ago
Wladimir J. van der Laan
89772f932a
Fix OP_EVAL recursion depth counting
13 years ago
Gavin Andresen
61977f956c
Check all prevout.n if one transaction provides multiple inputs
13 years ago
Gavin Andresen
60835d9627
assert condition in previous commit was backwards
13 years ago
Gavin Andresen
6996a9d713
Check for valid prevout.n in FetchInputs.
...
IsStandardInputs could crash if given invalid input index.
13 years ago
Matt Corallo
56690a69d6
No reason to have any qrcode stuff in the bitcoind osx makefile.
13 years ago
Gavin Andresen
fe358165e3
Be more conservative: check all transactions in blocks after last checkpoint.
13 years ago
Gavin Andresen
8a53cb0b9d
New RPC commands: getblockhash and getblock
13 years ago
Wladimir J. van der Laan
c58e7d4e01
Copy amount to clipboard (implements #657 )
...
- Also, unify similar code related to copying transaction fields to clipboard
13 years ago
Wladimir J. van der Laan
c4a4a4b886
Add context menu for address book page (implements part 1 of issue #648 )
13 years ago
Wladimir J. van der Laan
e073457191
Move HtmlEscape (escape for qt rich text controls) to qt gui utilities
13 years ago
Wladimir J. van der Laan
c75abc9f7e
Comments update
13 years ago
Gavin Andresen
2e17ac83c6
Fix broken ExtractAddress (refactored, made callers check for addresses in keystore if they care)
13 years ago
Gavin Andresen
ce336fdc21
Back out testnet default address change, it breaks accounts on old wallets.
13 years ago
Wladimir J. van der Laan
bde280b9a4
Revert "Use standard C99 (and Qt) types for 64-bit integers"
...
This reverts commit 21d9f36781
.
13 years ago
Luke Dashjr
21d9f36781
Use standard C99 (and Qt) types for 64-bit integers
13 years ago
Matt Corallo
f18a119ac0
Implement "Start on window system startup" on Win32 + Linux.
13 years ago
Gavin Andresen
77f21f1583
include util.h to get SecureString definition.
13 years ago
Gavin Andresen
0e87f34bed
Include limits, not climints (using std::numeric_limits now)
13 years ago
sje397
22123c85f3
Added QRCode generation functions via libqrencode. Switch on with USE_QRENCODE=1.
...
Amended build docs for Linux and OSX, and OSX makefile.
Added package 'qrencode' to gitian.yml
13 years ago
Gavin Andresen
9ef7fa3447
Code cleanup: use ECDSA_size() instead of fixed 10,000 byte sig buffer, and explicity init static var
13 years ago
Gavin Andresen
26ce92b352
Use std::numeric_limits<> for typesafe INT_MAX/etc
13 years ago
Gavin Andresen
bd846c0e56
Cleanup: removed dead code, and use C99 typedefs for int64 (supported by all modern c++ compilers)
13 years ago
Gavin Andresen
9e470585b3
Update bitcoin address numbers for latest luke-jr/sipa scheme
13 years ago
Gavin Andresen
be237c119e
Fix logic for IsChange() for send-to-self transactions.
13 years ago
Gavin Andresen
2a45a494b0
Use block times for 'hard' OP_EVAL switchover, and refactored EvalScript
...
so it takes a flag for how to interpret OP_EVAL.
Also increased IsStandard size of scriptSigs to 500 bytes, so
a 3-of-3 multisig transaction IsStandard.
13 years ago
Gavin Andresen
a0871afb2b
Interpret OP_EVAL as OP_NOP until Feb 1, 2012
13 years ago
Gavin Andresen
fae3e2aab6
Disable addmultisigaddress if not testnet
13 years ago
Gavin Andresen
d7062ef1bd
Put OP_EVAL string in coinbase of generated blocks
13 years ago
Pieter Wuille
3ae65166b5
add key.o and rpcdump.o to makefile.linux-mingw
13 years ago
Gavin Andresen
e679ec969c
OP_EVAL implementation
...
OP_EVAL is a new opcode that evaluates an item on the stack as a script.
It enables a new type of bitcoin address that needs an arbitrarily
complex script to redeem.
13 years ago
Gavin Andresen
cc40ba2151
Global fixture to send output to console instead of debug.log
13 years ago
Gavin Andresen
bf798734db
Support 3 new multisignature IsStandard transactions
...
Initial support for (a and b), (a or b), and 2-of-3 escrow
transactions (where a, b, and c are keys).
13 years ago
Gavin Andresen
1466b8b78a
Rework unit tests so test_bitcoin.cpp does not #include them all
13 years ago
Gavin Andresen
7e55c1ab65
Collapse no-op ExtractAddress/ExtractAddressInner
13 years ago
Gavin Andresen
f8ded588a2
Implement BIP 14 : separate protocol version from client version
13 years ago
Pieter Wuille
95d888a6d1
Key import and export
...
Introduces two new RPC calls:
* dumpprivkey: retrieve the private key corresponding to an address
* importprivkey: add a private key to your wallet
The private key format is analoguous to the address format. It is
a 51-character base58-encoded string, that includes a version number
and a checksum.
Includes patch by mhanne:
* add optional account parameter for importprivkey, if omitted use default
13 years ago
Pieter Wuille
30ab2c9c46
Preparations for key import/export
13 years ago
Pieter Wuille
15a8590ecf
CBitcoinSecret added (base58 encoded privkey)
13 years ago
Pieter Wuille
93db3fceac
Add GetSecret() and GetKeys() to CKeyStore
13 years ago
Pieter Wuille
4c6e22953e
Make CWalletTx::pwallet private
13 years ago