Wladimir J. van der Laan
ecaa91d1df
Fix typo ( #734 )
2012-01-03 11:57:24 +01:00
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.
2012-01-03 02:01:56 +01:00
coderrr
6ec76ca09e
make sure IsMine only returns true when we own all keys
2012-01-03 06:24:52 +07:00
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)
2011-12-28 11:14:05 +01:00
Gavin Andresen
625b56de64
Merge branch 'opevalcountfix' of https://github.com/laanwj/bitcoin
2011-12-27 16:42:29 -05:00
Gavin Andresen
6d6d392b22
Fixed OP_EVAL recursion unit test, checks for both infinite and exactly-3-deep recursion
2011-12-27 16:41:56 -05:00
Wladimir J. van der Laan
89772f932a
Fix OP_EVAL recursion depth counting
2011-12-27 10:02:28 +01:00
Gavin Andresen
61977f956c
Check all prevout.n if one transaction provides multiple inputs
2011-12-25 10:32:05 -05:00
Gavin Andresen
60835d9627
assert condition in previous commit was backwards
2011-12-25 10:08:01 -05:00
Gavin Andresen
6996a9d713
Check for valid prevout.n in FetchInputs.
...
IsStandardInputs could crash if given invalid input index.
2011-12-25 08:45:09 -05:00
Matt Corallo
56690a69d6
No reason to have any qrcode stuff in the bitcoind osx makefile.
2011-12-23 15:28:35 -08:00
Gavin Andresen
fe358165e3
Be more conservative: check all transactions in blocks after last checkpoint.
2011-12-23 17:13:10 -05:00
Gavin Andresen
8a53cb0b9d
New RPC commands: getblockhash and getblock
2011-12-23 16:26:38 -05:00
Wladimir J. van der Laan
c58e7d4e01
Copy amount to clipboard (implements #657 )
...
- Also, unify similar code related to copying transaction fields to clipboard
2011-12-23 12:07:23 +01:00
Wladimir J. van der Laan
c4a4a4b886
Add context menu for address book page (implements part 1 of issue #648 )
2011-12-23 12:07:23 +01:00
Wladimir J. van der Laan
e073457191
Move HtmlEscape (escape for qt rich text controls) to qt gui utilities
2011-12-23 12:07:23 +01:00
Wladimir J. van der Laan
c75abc9f7e
Comments update
2011-12-23 12:07:23 +01:00
Wladimir J. van der Laan
96b1e085c3
Merge pull request #629 from sje397/master
...
QR Code generation via libqrencode
2011-12-23 02:50:28 -08:00
Gavin Andresen
2e17ac83c6
Fix broken ExtractAddress (refactored, made callers check for addresses in keystore if they care)
2011-12-22 15:57:31 -05:00
Gavin Andresen
ce336fdc21
Back out testnet default address change, it breaks accounts on old wallets.
2011-12-22 15:56:45 -05:00
Wladimir J. van der Laan
bde280b9a4
Revert "Use standard C99 (and Qt) types for 64-bit integers"
...
This reverts commit 21d9f36781
.
2011-12-21 22:33:19 +01:00
Luke Dashjr
21d9f36781
Use standard C99 (and Qt) types for 64-bit integers
2011-12-20 16:52:59 -05:00
Gavin Andresen
781c06c0f5
Merge pull request #677 from luke-jr/minfee_modes
...
API: GetMinFee modes
2011-12-20 13:09:18 -08:00
Gavin Andresen
595925592d
Merge branch 'op_eval'
2011-12-20 14:43:31 -05:00
Gavin Andresen
f06e3e0ea6
Merge pull request #717 from TheBlueMatt/installerqtupgrade
...
Implement "Start on window system startup" on Win32 + Linux.
2011-12-20 11:42:53 -08:00
Matt Corallo
f18a119ac0
Implement "Start on window system startup" on Win32 + Linux.
2011-12-20 13:51:06 -05:00
Gavin Andresen
77f21f1583
include util.h to get SecureString definition.
2011-12-20 12:21:47 -05:00
Gavin Andresen
0e87f34bed
Include limits, not climints (using std::numeric_limits now)
2011-12-20 12:04:33 -05:00
Gavin Andresen
387c8e3c5b
Merge pull request #673 from mndrix/less-time-data
...
Store fewer time samples
2011-12-20 08:55:55 -08:00
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
2011-12-20 22:11:24 +11:00
Gavin Andresen
9ef7fa3447
Code cleanup: use ECDSA_size() instead of fixed 10,000 byte sig buffer, and explicity init static var
2011-12-19 19:10:34 -05:00
Gavin Andresen
26ce92b352
Use std::numeric_limits<> for typesafe INT_MAX/etc
2011-12-19 19:10:34 -05:00
Gavin Andresen
bd846c0e56
Cleanup: removed dead code, and use C99 typedefs for int64 (supported by all modern c++ compilers)
2011-12-19 19:10:34 -05:00
Gavin Andresen
3528650560
Merge pull request #690 from runeksvendsen/qt-cmdline-options-parsing
...
When using Qt GUI, move parameter-parsing to start of qt/bitcoin.cpp:main()
2011-12-19 12:23:00 -08:00
Gavin Andresen
bafb43d6c1
Merge branch 'txn_block_info' of https://github.com/luke-jr/bitcoin
2011-12-19 15:14:22 -05:00
Gavin Andresen
9e470585b3
Update bitcoin address numbers for latest luke-jr/sipa scheme
2011-12-19 13:24:51 -05:00
Gavin Andresen
be237c119e
Fix logic for IsChange() for send-to-self transactions.
2011-12-19 13:24:49 -05:00
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.
2011-12-19 13:24:48 -05:00
Gavin Andresen
a0871afb2b
Interpret OP_EVAL as OP_NOP until Feb 1, 2012
2011-12-19 13:24:48 -05:00
Gavin Andresen
fae3e2aab6
Disable addmultisigaddress if not testnet
2011-12-19 13:24:48 -05:00
Gavin Andresen
d7062ef1bd
Put OP_EVAL string in coinbase of generated blocks
2011-12-19 13:24:48 -05:00
Pieter Wuille
3ae65166b5
add key.o and rpcdump.o to makefile.linux-mingw
2011-12-19 19:20:53 +01:00
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.
2011-12-19 12:40:19 -05:00
Gavin Andresen
cc40ba2151
Global fixture to send output to console instead of debug.log
2011-12-19 12:40:19 -05:00
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).
2011-12-19 12:40:19 -05:00
Gavin Andresen
1466b8b78a
Rework unit tests so test_bitcoin.cpp does not #include them all
2011-12-19 12:39:47 -05:00
Gavin Andresen
7e55c1ab65
Collapse no-op ExtractAddress/ExtractAddressInner
2011-12-19 12:39:47 -05:00
Gavin Andresen
99a289f531
Merge pull request #574 from sipa/dumpprivkey
...
Dumpprivkey
2011-12-19 07:27:25 -08:00
Gavin Andresen
fc90967876
Merge pull request #699 from laanwj/about_qt
...
Add "About Qt" menu option to show built-in Qt About dialog
2011-12-19 07:26:14 -08:00
Gavin Andresen
1f3bc1c239
Merge pull request #707 from gavinandresen/BIP14
...
Implement BIP 14 : separate protocol version from client version
2011-12-19 07:25:16 -08:00
Gavin Andresen
f8ded588a2
Implement BIP 14 : separate protocol version from client version
2011-12-19 10:24:23 -05:00
Gavin Andresen
cd2b8832fd
Merge pull request #709 from luke-jr/newdnsseeds
...
New DNS seeds
2011-12-19 07:12:30 -08:00
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
2011-12-17 21:49:48 +01:00
Pieter Wuille
30ab2c9c46
Preparations for key import/export
2011-12-17 21:49:48 +01:00
Pieter Wuille
15a8590ecf
CBitcoinSecret added (base58 encoded privkey)
2011-12-17 21:49:48 +01:00
Pieter Wuille
93db3fceac
Add GetSecret() and GetKeys() to CKeyStore
2011-12-17 21:49:47 +01:00
Pieter Wuille
4c6e22953e
Make CWalletTx::pwallet private
2011-12-17 21:49:47 +01:00
Luke Dashjr
cce16fdc68
Add blockhash and blockindex to transaction info
2011-12-16 19:05:41 -05:00
Luke Dashjr
647734881c
Add my DNS seed domain
2011-12-16 18:34:47 -05:00
Gavin Andresen
6e39e7c9b3
Move more newlines out of strings, and fix translations.
2011-12-16 17:13:45 -05:00
Gavin Andresen
ab6c45372c
Merge branch 'fix-help-translations' of https://github.com/tcatm/bitcoin
2011-12-16 16:37:24 -05:00
Gavin Andresen
8896c2d9d6
Bump version 0.5.99 (prep for pulling for version 0.6)
2011-12-16 12:31:59 -05:00
Matt Corallo
61a8c0569e
Add sipa's new dnsseed.
2011-12-16 11:30:36 -05:00
Luke Dashjr
dbbf1d4a48
GetMinFee takes a mode parameter (GMF_{BLOCK,RELAY,SEND}) instead of fForRelay
2011-12-14 01:07:43 -05:00
Luke Dashjr
a880b29cab
Bugfix: fForRelay should be false when deciding required fee to include in blocks
...
During the rushed transition from 0.01 BTC to 0.0005 BTC fees, we took the
approach of dropping the relay and block-inclusion fee to 0.0005 BTC
immediately, and only delayed adjusting the sending fee for the next release.
Afterward, the relay fee was lowered to 0.0001 BTC to avoid having the same
problem in the future. However, the block inclusion code was left setting
fForRelay to true! This fixes that, so the lower 0.0001 BTC allowance is (as
intended) only permitted for real relaying.
2011-12-14 01:06:21 -05:00
Matt Corallo
7ca47cece7
Fix status bar not displaying Alerts.
2011-12-13 15:29:17 -05:00
Wladimir J. van der Laan
01ea41b203
Add "About Qt" menu option to show built-in Qt About dialog
...
- Most Qt programs do this, and it can be useful to find out what version of Qt was built against.
2011-12-13 17:35:17 +01:00
Wladimir J. van der Laan
857aa73783
Enable wordwrap for long message in passphrase dialog
...
- Remove explicit resizing from constructor to prevent potential hang
2011-12-13 16:32:25 +01:00
Nils Schneider
43421af2e4
move \\n outside _() in --help
2011-12-13 06:46:37 +01:00
Gavin Andresen
5491c310a6
Merge commit '7298ebb'
2011-12-12 15:03:16 -05:00
Nils Schneider
1d8b4cd544
added translations: pt_BR zh_CN
2011-12-12 20:56:34 +01:00
Nils Schneider
7ad4ca9c17
updated translations: es es_CL nb ru
2011-12-12 20:53:18 +01:00
Gavin Andresen
ca287d66f2
Merge pull request #694 from luke-jr/restore_old_miniupnp_compat
...
Restore compatibility with miniupnpc 1.5 (without breaking miniupnp 1.6)
2011-12-12 11:32:48 -08:00
Luke Dashjr
94b97046fd
Restore compatibility with miniupnpc 1.5 (without breaking miniupnp 1.6)
2011-12-10 11:52:50 -05:00
Wladimir J. van der Laan
45198af2be
Prevent window from being shown momentarily when using -min
...
- In a previous patch, show() was added to all the page switcher functions. As the contructor calls showOverviewPage(), this means the window is shown in the constructor.
- This change prevents this by connecting show() to the signal instead.
2011-12-09 22:41:19 +01:00
Rune K Svendsen
4dba26620c
When using Qt GUI, move parameter-parsing to start of qt/bitcoin.cpp:main()
2011-12-09 19:19:27 +01:00
Gavin Andresen
8848a70ba1
Merge pull request #679 from laanwj/cmdline_minimize
...
Implement -min option to start minimized
2011-12-05 07:53:15 -08:00
Wladimir J. van der Laan
7915370cb9
Implement -min option to start minimized
2011-12-04 10:03:57 +01:00
Gavin Andresen
43ae68b5ef
Merge pull request #654 from TheBlueMatt/dnsseed-thread
...
Move DNS Seed lookup to a new thread.
2011-12-02 07:09:41 -08:00
Michael Hendricks
1c4aab926e
Retain only the most recent time samples
...
Remembering all time samples makes nTimeOffset slow to respond to
system clock corrections. For instance, I start my node with a system
clock that's 30 minutes slow and run it for a few days. During that
time, I accumulate 10,000 offset samples with a median of 1800
seconds. Now I correct my system clock. Without this change, my node
must collect another 10,000 samples before nTimeOffset is correct
again. With this change, I must only accumulate 100 samples to
correct the offset.
Storing unlimited time samples also allows an attacker with many IP
addresses (ex, a large botnet) to perform a memory exhaustion attack
against Bitcoin nodes. The attacker sends a version message from each
IP to his target, consuming more of the target's memory each time.
Time samples are small, so this attack might be impractical under the
old code, but it's impossible with the new code.
2011-12-01 17:28:14 -07:00
Michael Hendricks
5e1ddc4210
Only log time samples in debug mode
...
The full list of time samples is rarely useful outside of debugging.
The node's time offset, however is useful for discovering local clock
drift, so it's displayed in all logging modes.
2011-12-01 17:28:14 -07:00
Gavin Andresen
173efb1865
Merge pull request #670 from gavinandresen/rpcauth_speedup
...
Speed up RPC authentication (reworked pull from Joel Katz)
2011-12-01 13:01:59 -08:00
Gavin Andresen
f81ce5bd6d
Speed up RPC authentication (reworked pull from Joel Katz)
2011-12-01 15:55:25 -05:00
Gavin Andresen
10fd7f6689
Orphan block fill-up-memory attack prevention
2011-12-01 13:53:38 -05:00
Gavin Andresen
eb5fff9e16
Moved checkpoints out of main, to prep for using them to help prevent DoS attacks
2011-12-01 12:18:50 -05:00
Gavin Andresen
a7120a3647
Merge pull request #666 from nobled/secstrings
...
Implement an mlock()'d string class for storing passphrases
2011-11-30 17:30:54 -08:00
Gavin Andresen
0305f60cad
Merge pull request #667 from laanwj/homeaddricons
...
Make home and addressbook icon more consistent with other toolbar icons
2011-11-30 17:28:13 -08:00
Gavin Andresen
e1b1055b46
Add missing command-line arguments to --help/-? output
2011-11-27 14:53:30 -05:00
Matt Corallo
2bc6cecebb
Move DNS Seed lookup to a new thread.
2011-11-26 14:28:46 -05:00
Wladimir J. van der Laan
24911ac65d
Make home and addressbook icon more consistent with other toolbar icons (make it blue and flip light source direction)
2011-11-26 10:10:22 +01:00
Dylan Noblesmith
94f778bdeb
Implement an mlock()'d string class for storing passphrases
...
SecureString is identical to std::string except with secure_allocator
substituting for std::allocator. This makes casting between them
impossible, so converting between the two at API boundaries requires
calling ::c_str() for now.
2011-11-26 06:02:04 +00:00
Wladimir J. van der Laan
d8b8640863
allow for filtering addresses and labels by searching for the typed string anywhere, not just at the beginning ( #641 )
2011-11-24 20:20:01 +01:00
Nils Schneider
b790077c37
update translation: de
2011-11-24 13:40:32 +01:00
Nils Schneider
8787ee699c
add translations: hu uk
2011-11-24 13:36:30 +01:00
Alex B
e92e97f1ee
Small fixes in both spanish translations
2011-11-24 12:32:19 +01:00
Nils Schneider
50aa850fc8
update translations: da de nl ru zh_TW
2011-11-22 13:01:07 +01:00
Nils Schneider
4b53cff901
add italian translation
2011-11-22 13:00:49 +01:00
Gavin Andresen
42eb76a054
Merge pull request #602 from wowus/master
...
Cleaned up critical section code.
2011-11-21 11:33:14 -08:00
Gavin Andresen
92979f8288
Merge pull request #634 from laanwj/doxygen
...
Add doxygen documentation
2011-11-21 11:31:57 -08:00
Gavin Andresen
0310cd6403
Merge pull request #632 from mndrix/deprecate-getblocknumber
...
Deprecate RPC getblocknumber
2011-11-21 11:31:42 -08:00