R E Broadley
90c838da9f
Show when node is misbehaving, not just at the point that it gets banned.
2012-07-02 21:58:47 +01:00
R E Broadley
812392d325
Include human readble format for nRequestTime.
2012-07-02 21:45:43 +01:00
Matt Corallo
467b79391f
Fix signed/unsigned warnings in {script,serialize}.h ( fixes #1541 )
2012-07-02 16:29:14 +02:00
Jeff Garzik
da1103f4f8
Merge pull request #1545 from TheBlueMatt/diffsendbuffer
...
Minor send buffer changes
2012-07-01 18:17:34 -07:00
Gregory Maxwell
19521acfa4
Do not consider inbound peers for outbound network group exclusion.
...
Bitcoin will not make an outbound connection to a network group
(/16 for IPv4) that it is already connected to. This means that
if an attacker wants good odds of capturing all a nodes outbound
connections he must have hosts on a a large number of distinct
groups.
Previously both inbound and outbound connections were used to
feed this exclusion. The use of inbound connections, which can be
controlled by the attacker, actually has the potential of making
sibyl attacks _easier_: An attacker can start up hosts in groups
which house many honest nodes and make outbound connections to
the victim to exclude big swaths of honest nodes. Because the
attacker chooses to make the outbound connection he can always
beat out honest nodes for the consumption of inbound slots.
At _best_ the old behavior increases attacker costs by a single
group (e.g. one distinct group to use to fill up all your inbound
slots), but at worst it allows the attacker to select whole
networks you won't connect to.
This commit makes the nodes use only outbound links to exclude
network groups for outbound connections. Fancier things could
be done, like weaker exclusion for inbound groups... but
simplicity is good and I don't believe more complexity is
currently needed.
2012-07-01 20:42:47 -04:00
Jeff Garzik
18e8e43715
RPC getpeerinfo: s/height/startingheight/ for returned nStartingHeight value
2012-06-30 23:40:26 -04:00
Matt Corallo
6d6c2afb2b
Change default send buffer to 1Mb.
2012-07-01 04:17:26 +02:00
Matt Corallo
3c3cb60a90
Remove useless high-volume printf ( fixes #1544 ).
2012-07-01 04:13:00 +02:00
Jeff Garzik
eca96d7118
Merge pull request #1540 from fanquake/master
...
Fix a Couple Typos
2012-06-30 07:25:32 -07:00
fanquake
7790f391ab
Fix a couple more typos
2012-06-30 17:05:28 +08:00
cardpuncher
eb9a21afed
Fix a typo in TransactionDesc
2012-06-30 11:31:09 +03:00
Gavin Andresen
3a906d45dc
Merge pull request #1531 from jgarzik/peerinfo
...
RPC: add 'getpeerinfo', returning easy-to-retrieve per-CNode data
2012-06-29 17:34:02 -07:00
Jeff Garzik
ac8d2b1df7
Merge pull request #1537 from Diapolo/fix_awesome_typo
...
fix an awesome typo in OptionsDialog ^^
2012-06-29 16:18:45 -07:00
Philip Kaufmann
0f5d4c6e88
fix a typo in OptionsDialog
2012-06-30 01:16:22 +02:00
Jeff Garzik
1006f0707e
RPC: add 'getpeerinfo', returning easy-to-retrieve per-CNode data
2012-06-29 17:24:53 -04:00
fanquake
e749405297
Fix a few typos
2012-06-29 17:26:45 +08:00
Jeff Garzik
70ab73a008
Create new rpcnet module, and move 'getconnectioncount' RPC to it
2012-06-28 23:18:38 -04:00
Gavin Andresen
5fa83965f2
Merge branch 'patch-5' of https://github.com/xanatos/bitcoin
2012-06-28 15:25:48 -04:00
Gavin Andresen
1b71f82e38
Merge branch 'patch-3' of https://github.com/xanatos/bitcoin
2012-06-28 15:24:35 -04:00
Matt Corallo
460d878613
Fix build error.
2012-06-28 19:31:22 +02:00
Matt Corallo
4e97a9d9eb
Lock vnThreadsRunning[THREAD_RPCHANDLER].
2012-06-28 18:34:11 +02:00
Matt Corallo
7cf3d2ccb9
Use a rpc-specific queue to tell asio connections to shutdown.
2012-06-28 18:32:32 +02:00
Matt Corallo
18c4beb05b
Revert "*Always* send a shutdown signal to enable custom shutdown actions"
...
This reverts commit 896899e0d6
.
2012-06-28 15:52:45 +02:00
R E Broadley
7f1de3fec8
Make truncating the debug.log file an option.
...
Useful for developers who need to refer to futher back in debug.log history, but who don't want to
enable the -debug option and all the verbosity that comes with that.
2012-06-27 23:42:22 +01:00
Jeff Garzik
e75acc006e
Merge pull request #1511 from jgarzik/quieten2
...
Quieten 'getdata' P2P message output
2012-06-27 09:06:59 -07:00
Pieter Wuille
abbb9a829c
Merge pull request #1347 from rebroad/FixAlreadyAskedFor
...
mapAlreadyAskedFor gets additions when AlreadyHave()
2012-06-27 08:06:57 -07:00
Pieter Wuille
6c88568fef
Merge pull request #973 from TheBlueMatt/diffsendbuffer
...
Stop processing messages on full send buffer and dont disconnect.
2012-06-27 07:49:28 -07:00
Pieter Wuille
4a52c187d3
Merge pull request #457 from muggenhor/async-ipv6-rpc
...
IPv6 RPC using asynchronously accepted connections
2012-06-27 07:48:38 -07:00
Matt Corallo
9d6cd04b3b
Stop processing messages on full send buffer and dont disconnect.
...
Also decrease default send/receive buffer sizes from 10 to 5 mb
as this patch makes it easy for a node to fill both instead of
only send.
2012-06-27 15:31:34 +02:00
Philip Kaufmann
2943f60811
GUI: change language selection format
...
- display as "language - country (locale name)", when locale name consists of 2 parts
- display as "language (locale name)", when locale name consists of 1 part
2012-06-26 16:14:25 +02:00
Wladimir J. van der Laan
2849d0661d
Merge pull request #1501 from fanquake/master
...
QT to Qt
2012-06-25 06:49:59 -07:00
Gavin Andresen
1282c8653e
Checkpoint at block 185333 (and remove a couple of intermediate checkpoints)
2012-06-25 09:26:14 -04:00
Michael Ford
160eb23b0e
Add Bitcoin dev Copyright
2012-06-25 12:28:29 +08:00
Michael Ford
e4ebe82ee2
Update comments
2012-06-25 12:26:52 +08:00
Philip Kaufmann
a8c20ea946
fix a comment to correctly use -upgradewallet
2012-06-24 18:08:27 +02:00
Jeff Garzik
d887f54494
Document -debugnet option in command line help.
...
Fixes #1507
2012-06-24 10:38:02 -04:00
Giel van Schijndel
5b14622110
On Windows link with mswsock
, it being required (indirectly) by RPC code
...
Signed-off-by: Giel van Schijndel <me@mortis.eu>
2012-06-24 15:12:26 +02:00
Giel van Schijndel
ad25804feb
Cancel outstanding listen ops for RPC when shutting down
...
Use Boost's signal2 slot tracking mechanism to cancel any (still open)
listening sockets when receiving a shutdown signal.
Signed-off-by: Giel van Schijndel <me@mortis.eu>
2012-06-24 15:12:15 +02:00
Giel van Schijndel
415a87ef36
Merge branch 'master' into async-ipv6-rpc
2012-06-24 12:34:15 +02:00
Gregory Maxwell
817ee0d826
Merge pull request #1174 from sipa/torhs
...
Tor hidden service support
2012-06-23 19:21:13 -07:00
Gregory Maxwell
0ae2ac5431
Merge pull request #1503 from gmaxwell/testnet_tweaks
...
Remove some rule differences which aren't needed with testnet3.
2012-06-23 19:02:55 -07:00
Jeff Garzik
983e4bdef0
Quieten 'getdata' P2P message output
...
Output one message per getdata, not one message per 'inv' entry.
2012-06-23 21:38:33 -04:00
xanatos
3948eb0c54
Changed a comment about a QVariant type
2012-06-23 17:29:34 +03:00
Pieter Wuille
863e995b79
Debug version messages
2012-06-23 01:11:38 +02:00
Pieter Wuille
54ce3bad64
Add -tor and related configuration
2012-06-23 01:11:38 +02:00
Pieter Wuille
d077dd2a6e
Rewrite CNetAddr::GetReachabilityFrom()
...
Add support for Tor/I2P networks, and make code more readable.
2012-06-23 01:11:38 +02:00
Pieter Wuille
70f7f00385
Node support for Tor hidden services
...
This commit adds support for .onion addresses (mapped into the IPv6
by using OnionCat's range and encoding), and the ability to connect
to them via a SOCKS5 proxy.
2012-06-23 01:11:32 +02:00
Jeff Garzik
d62a1947be
Merge pull request #1458 from jgarzik/tracenet
...
Introduce -tracenet option, thereby quieting some redundant debug messages
2012-06-22 10:13:31 -07:00
Jeff Garzik
d07eaba195
Introduce -debugnet option, thereby quieting some redundant debug messages
...
Prior to this change, each TX typically generated 3+ debug messages,
askfor tx 8644cc97480ba1537214 0
sending getdata: tx 8644cc97480ba1537214
askfor tx 8644cc97480ba1537214 1339640761000000
askfor tx 8644cc97480ba1537214 1339640881000000
CTxMemPool::accept() : accepted 8644cc9748 (poolsz 6857)
After this change, there is only one message for each valid TX received
CTxMemPool::accept() : accepted 22a73c5d8c (poolsz 42)
and two messages for each orphan tx received
ERROR: FetchInputs() : 673dc195aa mempool Tx prev not found 1e439346fc
stored orphan tx 673dc195aa (mapsz 19)
The -debugnet option, or its superset -debug, will restore the full debug
output.
2012-06-22 13:11:57 -04:00
Jeff Garzik
cb1fcde2f4
Merge pull request #1502 from jgarzik/getrawmempool
...
RPC: add 'getrawmempool', listing all transaction ids in memory pool
2012-06-22 09:59:19 -07:00
Gregory Maxwell
e6332751c6
Remove some rule differences which aren't needed with testnet3.
...
Bip16 and Bip30 had early activation dates for testnet, but
with the reset they might as well use the same dates as
the main network.
2012-06-22 11:50:52 -04:00
Jeff Garzik
25d5c19522
RPC: add 'getrawmempool', listing all transaction ids in memory pool
2012-06-22 11:43:34 -04:00
Gregory Maxwell
a3869547e5
Merge pull request #1495 from Diapolo/fix_CKey_mem_leak
...
fix a memory leak in key.cpp
2012-06-22 08:38:48 -07:00
Pieter Wuille
e0be8da392
Unit tests for base32 encode/decode
2012-06-22 17:19:28 +02:00
Pieter Wuille
c4c99ade65
Base32 encoding/decoding
2012-06-22 17:19:28 +02:00
xanatos
d89f06c1ae
Small fix to rpc_tests
2012-06-22 10:02:43 +03:00
xanatos
fdfdb5cd7d
= instead of == in multisig_tests.cpp
2012-06-21 21:37:49 +03:00
Philip Kaufmann
a3d12f445a
fix a memory leak in key.cpp
...
- add EC_KEY_free() in CKey::Reset() when pkey != NULL
- init pkey with NULL in CKey constructor
2012-06-21 14:43:13 +02:00
Pieter Wuille
70f6049f71
Remove CTxDB::ReadOwnerTxes.
...
It seems it wasn't ever used since 0.1.5.
2012-06-20 15:07:48 +02:00
Philip Kaufmann
229c34f818
GUI: ensure a changed bitcoin unit immediately updates the tx list amounts
2012-06-20 06:51:38 +02:00
Gavin Andresen
c283b3c569
print large orphan warning BEFORE deleting pvMsg
2012-06-19 17:14:29 -04:00
xanatos
16d5671943
If (for example) the new max_size must be 5 then at the end the queue.size() must be <= 5, so the exit condition must be <=, so the continuing condition must be > (and not >= as it was).
2012-06-19 09:48:00 +03:00
Pieter Wuille
4c6b210af0
Fix netbase tests
...
* Do not rely on "a.b.c" being interpreted as "a.0.b.c"
* Parse numeric addresses for address families for which no device is configured
2012-06-19 02:22:09 +02:00
Luke Dashjr
0f5a2a82d9
CBigNum: Convert negative int64 values in a more well-defined way
...
Since the minimum signed integer cannot be represented as positive so long as its type is signed, and it's not well-defined what happens if you make it unsigned before negating it, we instead increment the negative integer by 1, convert it, then increment the (now positive) unsigned integer by 1 to compensate
2012-06-18 20:37:57 +00:00
Gavin Andresen
c5532e188e
Merge pull request #1399 from sipa/ipparse
...
Improve parsing of IPv6 addresses
2012-06-18 11:39:16 -07:00
Gavin Andresen
550c73f4c8
Merge branch 'signbugs' of https://github.com/wizeman/bitcoin
...
Resolved minor conflict in main.cpp
2012-06-18 10:48:40 -04:00
Pieter Wuille
432d28d3bb
Merge pull request #1477 from gmaxwell/master
...
Fix inverted logic for !Discover/!UPNP when !Listen.
2012-06-17 17:07:08 -07:00
Giel van Schijndel
896899e0d6
*Always* send a shutdown signal to enable custom shutdown actions
...
NOTE: This is required to be sure that we can properly shut down the RPC
thread.
Signed-off-by: Giel van Schijndel <me@mortis.eu>
2012-06-17 21:50:49 +02:00
Wladimir J. van der Laan
a54d2118be
Merge pull request #1434 from Diapolo/GUI_fix_displayunit
...
GUI: init with correct display unit and update it, when user changes it via options dialog
2012-06-17 12:29:26 -07:00
Wladimir J. van der Laan
8ce04527f9
Merge pull request #1451 from Diapolo/sendcoins
...
GUI: set cursor for balance field to IBeamCursor (to show the user it IS selectable)
2012-06-17 12:26:20 -07:00
Wladimir J. van der Laan
6062de265a
Merge pull request #1461 from laanwj/2012_06_helpmessage
...
Show command line options as dialog when opened from debug window
2012-06-17 12:24:35 -07:00
Gregory Maxwell
3bbb49de55
Fix inverted logic for !Discover/!UPNP when !Listen.
2012-06-17 12:13:34 -04:00
Philip Kaufmann
e0873dafc5
add the slot updateDisplayUnit() to overviewpage, sendcoinsdialog, sendcoinsentry and connect it to displayUnitChanged() - this ensures all fields in the GUI, who use a display unit are imediately updated, when the user changes this setting in the optionsdialog / ensure used fields init with the current set display unit
2012-06-17 15:20:42 +02:00
Giel van Schijndel
07368a9e3c
Merge branch 'master' into async-ipv6-rpc
...
Conflicts:
src/bitcoinrpc.cpp
Signed-off-by: Giel van Schijndel <me@mortis.eu>
2012-06-17 14:30:37 +02:00
Matt Corallo
ad5f29b743
Revert "Disable bitcoin: URI handling on Windows for the 0.6 release"
...
This reverts commit 7b90edb5a6
.
2012-06-15 17:19:13 +02:00
Matt Corallo
1d42878adb
Fix #956 the Boost 1.49 way.
2012-06-15 17:19:09 +02:00
Matt Corallo
39471861d5
Upgrade to Boost 1.49 on Win32
2012-06-15 17:15:37 +02:00
Pieter Wuille
c971112dfa
Use a 64-bit nonce in ping
...
Former code sent '0' as nonce, which was serialized as 32-bit.
2012-06-14 18:31:08 +02:00
Pieter Wuille
c4971e24f9
Add netbase tests
2012-06-14 17:43:10 +02:00
Pieter Wuille
1e8aeae15a
Improve parsing of IPv6 addresses
...
Implement the following rules:
* Interpret [X]:Y as host=X port=Y, if Y is an integer
* Interpret X:Y as host=X port=Y, if Y is an integer and X contains no colon
* Interpret X:Y as host=X:Y port=default otherwise
2012-06-14 17:37:15 +02:00
Wladimir J. van der Laan
7d72a8c36a
Show command line options as dialog when opened from debug window
...
On Linux/Mac the command-line options were printed to stderr when the button
was pressed in the debug window, resulting in confusion. This is fixed
in this commit by adding a separate method.
2012-06-14 15:14:01 +02:00
Wladimir J. van der Laan
d59bce21e5
Merge pull request #1459 from laanwj/2012_06_trayiconmenu
...
Reorganize tray icon menu into more logical order
2012-06-14 05:52:33 -07:00
Wladimir J. van der Laan
641cfb1456
Fix build of testcases after commit 0f10b21719
2012-06-14 09:41:11 +02:00
Wladimir J. van der Laan
64d46e7c6a
Merge pull request #1002 from Diapolo/URL-handling_2
...
URI-handling code update: added safety checks and notifications
2012-06-13 23:17:06 -07:00
Wladimir J. van der Laan
0f10b21719
Merge pull request #1439 from Diapolo/ClientShutdown
...
re-work Shutdown() function
2012-06-13 23:12:22 -07:00
Wladimir J. van der Laan
f5f2d7410d
Reorganize tray icon menu into more logical order
...
The current order of menu options in the tray menu doesn't really match expected usage patterns, this commit changes it to more logical order.
- Toggle show/hide first (unchanged)
- Then, send/receive coins actions, which are the critical functionality of bitcoin
- Then, sign/verify message
- Then finally the options, and closing with the debug window
2012-06-14 08:01:41 +02:00
Philip Kaufmann
93b7af3099
URI-handling code update: added safety checks and tray-notifications
2012-06-14 07:59:27 +02:00
Wladimir J. van der Laan
7a98f19fb6
Merge pull request #1420 from Diapolo/extend_showNormalIfMinimized
...
GUI: merge toggleHidden() code into showNormalIfMinimized()
2012-06-13 22:49:38 -07:00
Gavin Andresen
d518e444f8
Merge branch 'refactor_coinselect' of https://github.com/luke-jr/bitcoin
2012-06-13 21:36:35 -04:00
Philip Kaufmann
b5782531ad
set cursor for balance field to IBeamCursor (to show the user it IS selectable) and set autoDefault to false for the buttons that do not need this
2012-06-13 18:34:29 +02:00
Wladimir J. van der Laan
7d1490576d
Merge pull request #1448 from Diapolo/2012-06-13_translation_updates
...
update translation files (fetched from Transifex - 2012-06-13)
2012-06-13 09:24:39 -07:00
Wladimir J. van der Laan
15094f7654
Update bitcoinstrings from core and English source translation file
...
This is necessary as any strings have changed since last time.
Also the python script used to extract bitcoinstrings.cpp, extract_strings_qt.py
now sorts the strings before generating the output file. This results in more
deterministic output and thus smaller diffs.
2012-06-13 18:19:16 +02:00
Philip Kaufmann
66654ab02e
update translation files (fetched from Transifex) and remove translation for fr_FR, which was removed / renamed on TX
2012-06-13 18:04:27 +02:00
Philip Kaufmann
c4443c2be1
re-work optionsdialog to a tabbed UI based on an ui-file
...
- extend network options with a SOCKS version selection
- changing "Unit to show amounts in:" now also updates the unit used in the transaction fee box
- string updates
- link Apply button and OK button when enabling or disabling them
- use LookupNumeric() from netbase to verify proxy address (via an EventFilter)
- change proxy address field to QValidatedLineEdit and add visual feedback
- add a status label used for displaying a message for invalid proxy addresses
- allow usage of IPv6 address as proxy address
- added warning message when enabling / disabling SOCKS proxy
2012-06-13 16:24:25 +02:00
Wladimir J. van der Laan
c4879a0c2f
Merge pull request #1444 from laanwj/2012_06_opendebuglog
...
Cross-platform “Open debug logfile”
2012-06-12 23:56:14 -07:00
Philip Kaufmann
d2e6dd6c99
merge toggleHidden() code into showNormalIfMinimized() to extend the functionality, but keep a simpler toggleHidden() for use in SLOT() macro
2012-06-12 22:15:35 +02:00
Philip Kaufmann
d4b2f3c45b
make buttons in debug window non autoDefault
2012-06-12 17:17:51 +02:00
Wladimir J. van der Laan
9b1732baae
Cross-platform "Open debug logfile"
...
The option to open the debug logfile from the debug window was implemented only for
windows. By using `QDesktopServices::openUrl` it now works on any platform.
2012-06-12 16:35:19 +02:00
Wladimir J. van der Laan
12718ce767
Merge pull request #1440 from Diapolo/overviewpage_InitialBalance
...
change initial Balance on overviewpage from "123.456 BTC" to "0 BTC" to ...
2012-06-12 04:19:49 -07:00
Wladimir J. van der Laan
2842fe4aa3
Do not select first address automatically in the address book
...
This contributed to an accidental send (#1384 ), and has no clear advantage, better to disable it.
2012-06-12 10:48:42 +02:00
Wladimir J. van der Laan
b6ef8d5a40
Merge pull request #1412 from Diapolo/string_wait_mature
...
GUI: update info strings for generated blocks
2012-06-11 22:30:21 -07:00
Philip Kaufmann
9247134eab
introduce a new StartShutdown() function, which starts a thread with Shutdown() if no GUI is used and calls uiInterface.QueueShutdown() if a GUI is used / all direct uiInterface.QueueShutdown() calls are replaced with Shutdown() - this ensures a clean GUI shutdown, even when catching a SIGTERM and allows the BitcoinGUI destructor to get called (which fixes a tray-icon issue and keeps the tray-icon until Bitcoin-Qt exits)
2012-06-12 07:21:03 +02:00
Philip Kaufmann
59e0f445ce
change initial Balance on overviewpage from "123.456 BTC" to "0 BTC" to not confuse users, which could see it before we init with the real wallet balance
2012-06-11 22:40:06 +02:00
Jeff Garzik
883a310904
Merge pull request #1435 from TheBlueMatt/mingwbuild
...
Fix Mingw64 build (missing headers according to M$ documentation)
2012-06-09 12:40:15 -07:00
Matt Corallo
b065976007
Fix Mingw64 build (missing headers according to M$ documentation)
2012-06-09 17:14:41 +02:00
Philip Kaufmann
40d23dafb7
update info string in GUI for generated blocks and change "must wait" into "must mature" to take the new immature label into consideration
2012-06-09 00:34:10 +02:00
Pieter Wuille
11f73c728a
Merge pull request #1421 from Diapolo/netbase_fix_sign_warnings
...
fix two signed/unsigned comparison warnings in netbase.cpp
2012-06-08 07:29:34 -07:00
Pieter Wuille
0ed0806bb4
Update comment about secure_allocator<>
2012-06-08 16:27:05 +02:00
Pieter Wuille
1b7cd74a49
Merge pull request #1424 from TheBlueMatt/lockcontention
...
Fix DEBUG_LOCKCONTENTION
2012-06-08 07:22:19 -07:00
Ricardo M. Correia
31ac53fbdc
Move NOINLINE definition to test where it's used.
2012-06-07 20:22:18 +02:00
Ricardo M. Correia
43346904e1
Don't overflow integer on 32-bit machines.
...
This was causing test_bitcoin to abort on a 32-bit system likely due to -ftrapv.
2012-06-07 20:22:10 +02:00
Pieter Wuille
afdd59416e
Merge pull request #1418 from Diapolo/GUI_fix_default_proxy_addr
...
fix default Proxy address in Qt options (no hostname allowed currently)
2012-06-05 11:13:25 -07:00
Matt Corallo
4d009243cb
Fix DEBUG_LOCKCONTENTION
2012-06-05 16:13:16 +02:00
Philip Kaufmann
618b250e34
add used datadir to debug.log
2012-06-05 07:37:07 +02:00
Philip Kaufmann
b69dd08ae7
fix two signed/unsigned comparison warnings in netbase.cpp
2012-06-05 07:32:27 +02:00
Philip Kaufmann
4e16306ae3
fix default Proxy address in Qt options (no hostname allowed currently)
2012-06-04 23:13:01 +02:00
Gavin Andresen
46e06b875d
Merge branch 'netopt' of https://github.com/sipa/bitcoin
2012-06-04 14:15:19 -04:00
Chris Moore
831f59ce8b
Fix coin selection to only include change when it's necessary.
2012-06-04 16:49:10 +00:00
Chris Moore
d650f96d5f
Preserve the shuffled order of coins with equal value to give more randomized coin selection.
2012-06-04 16:36:46 +00:00
Chris Moore
4ce190a015
Test that the coin selection code is suitably random, and add tests re. sub-cent change.
2012-06-04 16:36:43 +00:00
Chris Moore
e333ab56d5
Move the random_shuffle call back into SelectCoinsMinConf() so we can unit test it.
2012-06-04 16:36:39 +00:00
Chris Moore
9b0369c773
Refactor SelectCoinsMinConf() and add unit tests.
...
AvailableCoins() makes a vector of available outputs which is then passed to SelectCoinsMinConf(). This allows unit tests to test the coin selection algorithm without having the whole blockchain available.
2012-06-04 16:36:34 +00:00
Wladimir J. van der Laan
882ba0e752
Merge pull request #837 from sje397/ShowImmatureBalance
...
Added 'immature balance' for miners. Only displayed if the balance is > 0
2012-06-02 02:35:48 -07:00
Wladimir J. van der Laan
88d7bc930a
Merge pull request #1368 from Diapolo/verifymessagepage
...
GUI: change verifymessagepage behaviour to match RPC-call "verifymessage"
2012-06-02 02:33:41 -07:00
Philip Kaufmann
5d6b30271f
move class HelpMessageBox to guiutil.cpp/.h / add button to show Bitcoin command-line options (in RPC Console -> Information) / resize Debug window a little to allow for a non-breaking display of the welcome message with non-english translation
2012-06-01 16:29:54 +02:00
Philip Kaufmann
8103b0bb62
change verifymessagepage behaviour to match RPC-call "verifymessage" (input address, signature and message) / display messages in status label (remove message boxes) / resize window to make signature fully readable / change signature font to BC-address font (like in messagepage) / remove checkAddress() and place code directly in on_verifyMessage_clicked() / add visual feedback to LineEdits / remove AddressTableModel references, as they are now unused / add addr.GetKeyID(keyID) check
2012-06-01 11:13:44 +02:00
Gavin Andresen
98474d3d6f
Use ConvertTo to simplify sendmany/addmultisigaddress argument handling
2012-05-31 16:09:31 -04:00
Gavin Andresen
ea7582bb41
Make sendrawtx return txid to be consistent with other send methods.
2012-05-31 16:05:07 -04:00
Ricardo M. Correia
10b45b4c2e
Use C++-style numeric limits instead of C-style.
2012-05-31 20:33:22 +02:00
Ricardo M. Correia
78e851f94f
Fix noinline definition so that it works for more compilers.
2012-05-31 20:33:14 +02:00
Pieter Wuille
587f929c64
Rework network config settings
2012-05-31 18:12:35 +02:00
Philip Kaufmann
407e20c11a
sync english translation master file with current master branch
2012-05-31 11:11:04 +02:00
Pieter Wuille
10ed8178fc
Update bitcoinstrings.cpp
2012-05-30 23:00:21 +02:00
R E Broadley
e69a797990
Show the timestamp for the block.
...
wrap lines
2012-05-29 20:11:37 +01:00
Gregory Maxwell
20cb17e1f9
Merge pull request #1392 from gavinandresen/testnet_reset
...
Testnet reset
2012-05-27 19:26:47 -07:00
Luke Dashjr
3cd01fdf0e
CreateNewBlock: Check that the produced CBlock is acceptable (except for proof-of-work and merkletree, since those need to be provided later)
...
This throws an exception from CreateNewBlock otherwise, which is not safe without #1245 !
2012-05-27 12:27:33 +00:00
Pieter Wuille
a52c7a1b65
Merge pull request #1357 from sipa/keyid
...
Refactor: split CKeyID/CScriptID/CTxDestination from CBitcoinAddress
2012-05-26 10:17:27 -07:00
Pieter Wuille
1e07068adf
Merge pull request #1370 from Diapolo/add_startuptime_to_log
...
add client startup time as an entry to debug.log
2012-05-26 01:55:17 -07:00
Gavin Andresen
c87c8cd163
Add a testnet checkpoint at block 546
2012-05-25 14:36:40 -04:00
Gavin Andresen
248bceb30c
Fix issue#1082, testnet difficulty unsigned integer underflow
2012-05-25 14:36:40 -04:00
Gavin Andresen
feeb761ba0
Testnet, Mark III
2012-05-25 14:36:40 -04:00
Gavin Andresen
4e6e3293ff
Remove newlines from JSON strings
...
Newlines in JSON strings are against the JSON spec,
so remove them from the script*.json unit tests to
make python's jsonrpc happy (json::spirit didn't care).
2012-05-25 13:58:44 -04:00
Gavin Andresen
787f5e9949
Unit tests for transaction size limits
2012-05-25 11:37:34 -04:00
sje397
8fdb7e108f
Added 'immature balance' for miners. Only displayed if the balance is greater than zero.
...
This adds a field labelled 'Immature' in the overview section under the 'unconfirmed' field, which shows mined
income that has not yet matured (which is currently not displayed anywhere, even though the transactions
exist in the transaction list). To do that I added a 'GetImmatureBalance' method to the wallet, and connected
that through to the GUI as per the 'GetBalance' and 'GetUnconfirmedBalance' methods. I did a small 'no-op'
change to make the code in adjacent functions a little more readable (imo); it was a change I had made in my
repo earlier...but I thought it wouldn't hurt so left it in. Immature balance comes from mined income that is
at least two blocks deep in the chain (same logic as displayed transactions).
My reasoning is:
- as a miner, it's a critical stat I want to see
- as a miner, and taking into account the label 'immature', the uncertainty is pretty clearly implied
- those numbers are already displayed in the transaction list
- this makes the overview numbers add up to what's in the transaction list
- it's not displayed if the immature balance is 0, so won't bother non-miners
I also 'cleaned' the overview UI a little, moving code to the XML and removing HTML.
2012-05-25 23:15:27 +10:00
Giel van Schijndel
fbf9df2ea3
Use the QueueShutdown signal to stop accepting new RPC connections
...
Signed-off-by: Giel van Schijndel <me@mortis.eu>
2012-05-25 07:27:25 +02:00
Giel van Schijndel
7cc2ceae09
Allow all addresses on the loopback subnet (127.0.0.0/8) not just 127.0.0.1
...
Signed-off-by: Giel van Schijndel <me@mortis.eu>
2012-05-25 07:27:24 +02:00
Giel van Schijndel
a0780ba08a
Generalise RPC connection handling code to allow more listening sockets
...
Using this modification it should be relatively easy to, at a later
time, listen on multiple addresses (even Unix domain sockets should be
possible).
Signed-off-by: Giel van Schijndel <me@mortis.eu>
2012-05-25 07:27:24 +02:00
Giel van Schijndel
43b6dafa6e
Allow clients on the IPv6 loopback as well
...
Signed-off-by: Giel van Schijndel <me@mortis.eu>
2012-05-25 07:27:24 +02:00
Giel van Schijndel
c1ecab818c
Add dual IPv4/IPv6 stack support to the RPC server
...
The RPC server now listens for, and handles, incoming connections on
both IPv4 as well as IPv6.
If available (and usable) it uses a dual IPv4/IPv6 socket on systems
that support it (e.g. Linux and BSDs) and falls back to separate
IPv4/IPv6 sockets on systems that don't (e.g. Windows).
Signed-off-by: Giel van Schijndel <me@mortis.eu>
2012-05-25 07:27:24 +02:00
Giel van Schijndel
914dc01222
Use asynchronous I/O to handle RPC requests
...
This allows more flexibility in the RPC code, e.g. making it easier to
handle multiple simultaneous connections later on.
Currently asynchronous I/O is only used to listen for and accept
incoming connections. Asynchronous reading/writing is more involved.
Signed-off-by: Giel van Schijndel <me@mortis.eu>
2012-05-25 07:27:24 +02:00
Gavin Andresen
6b8a17119e
Lots more Script unit test cases.
2012-05-24 17:32:09 -04:00
Pieter Wuille
1025440184
Refactor: split CKeyID/CScriptID/CTxDestination from CBitcoinAddress
...
This introduces internal types:
* CKeyID: reference (hash160) of a key
* CScriptID: reference (hash160) of a script
* CTxDestination: a boost::variant of the former two
CBitcoinAddress is retrofitted to be a Base58 encoding of a
CTxDestination. This allows all internal code to only use the
internal types, and only have RPC and GUI depend on the base58 code.
Furthermore, the header dependencies are a lot saner now. base58.h is
at the top (right below rpc and gui) instead of at the bottom. For the
rest: wallet -> script -> keystore -> key. Only keystore still requires
a forward declaration of CScript. Solving that would require splitting
script into two layers.
2012-05-24 20:26:19 +02:00
Pieter Wuille
fd61d6f506
Encapsulate public keys in CPubKey
2012-05-24 19:58:12 +02:00
Gavin Andresen
f04017f702
More CScript unit tests.
2012-05-24 13:29:08 -04:00
Jeff Garzik
b92095f18c
DoS_tests: fix signed/unsigned comparison warnings
...
test/DoS_tests.cpp: In member function ‘void DoS_tests::DoS_mapOrphans::test_method()’:
test/DoS_tests.cpp:200:41: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
test/DoS_tests.cpp:208:41: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
test/DoS_tests.cpp: In member function ‘void DoS_tests::DoS_checkSig::test_method()’:
test/DoS_tests.cpp:260:37: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
test/DoS_tests.cpp:267:37: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
test/DoS_tests.cpp:280:41: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
test/DoS_tests.cpp:307:37: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
2012-05-24 12:18:50 -04:00
Jeff Garzik
2ae4ad004a
Merge pull request #1387 from Diapolo/rem_unused_rpcdump
...
remove dead "using namespace boost::asio;" from rpcdump.cpp
2012-05-24 09:14:59 -07:00
Jeff Garzik
ec9c902133
Merge pull request #1383 from jgarzik/rawtx
...
JSON-RPC: Add 'sendrawtx' op, for sending pre-built TX's to network
2012-05-24 09:14:04 -07:00
Philip Kaufmann
bd09334d1a
remove dead "using namespace boost::asio;" from rpcdump.cpp
2012-05-24 18:13:03 +02:00
Jeff Garzik
8e154e4d74
Merge branch 'merge2' into merge
2012-05-24 11:57:51 -04:00
Jeff Garzik
480d44bd0b
rpcdump: include cleanup. move JSONRPCError def to bitcoinrpc.h.
2012-05-23 23:20:07 -04:00
Jeff Garzik
429039d45d
Refactor: move runCommand() to util.cpp
2012-05-23 23:10:59 -04:00
Jeff Garzik
976c08b68a
JSON-RPC: Add 'sendrawtx' op, for sending pre-built TX's to network
2012-05-23 16:21:25 -04:00
Philip Kaufmann
41c6b8abc6
add client startup time as an entry to debug.log (note: logged time in debug.log differs by a few seconds from the one displayed in the Debug window) / make ClientModel::formatClientStartupTime() return a QString
2012-05-23 18:44:28 +02:00
Jeff Garzik
9ac282ca0c
Refactor: add IsChainFile helper. LoadBlockIndex() code movement.
2012-05-23 00:17:07 -04:00
Gregory Maxwell
7a99821377
Merge pull request #1342 from rebroad/LastSeenMinusMinus
...
Should not be T minus, as this indicate duration to future event.
2012-05-22 20:33:35 -07:00
Luke Dashjr
f9189543bf
CDBEnv: fix qt build
2012-05-22 20:47:42 -04:00
Pieter Wuille
f29f242758
Merge pull request #1380 from gavinandresen/optimize2
...
Move signature cache from CKey::Verify to CheckSig in script.cpp
2012-05-22 15:13:36 -07:00
Jeff Garzik
0134a1c08c
Merge branch 'dbenv' into tmp
...
Conflicts:
src/db.cpp
2012-05-22 17:45:00 -04:00
Jeff Garzik
5d0f7c4f47
Merge pull request #1381 from jgarzik/check-deser
...
Prevent crashes due to missing or corrupted database records
2012-05-22 14:39:49 -07:00
Pieter Wuille
fa638ec8af
Merge pull request #1369 from sipa/bootorder
...
Reorder AppInit2
2012-05-22 13:54:46 -07:00
Jeff Garzik
78eb2789b2
ProcessMessage(): remove duplicate orphan tx debug message
2012-05-22 15:33:04 -04:00
Jeff Garzik
8fe791e4e2
Prevent crashes due to missing or corrupted blk????.dat records
...
In LoadExternalBlockFile(), errors are already caught... silently.
Add a warning message, even though we do not abort the program due to
load error.
2012-05-22 15:23:17 -04:00
Jeff Garzik
f94b64c2f3
Prevent crashes due to missing or corrupted database records
...
Any problems seen during deserialization will throw an uncaught
exception, crashing the entire bitcoin process. Properly return an
error instead, so that we may at least log the error and gracefully
shutdown other portions of the app.
2012-05-22 15:12:52 -04:00
Gavin Andresen
acf513cfe7
Move signature cache from CKey::Verify to CheckSig in script.cpp
...
More than doubles the speed of verifying already-cached signatures
that use compressed pubkeys:
Before: ~200 microseconds
After: ~80 microseconds
(no caching at all: ~3,300 microseconds per signature)
Also encapsulates the signature cache code in a class
and fixes a signed/unsigned comparison warning.
2012-05-22 14:15:11 -04:00
Wladimir J. van der Laan
d1edab602a
Merge pull request #1379 from laanwj/2012_05_macoshide
...
Remove duplicate behavior on MacOSX
2012-05-22 10:33:03 -07:00
Wladimir J. van der Laan
b06f9c1364
Remove duplicate behavior on MacOSX
...
Dock icon on macosx already has show/hide functionality. This results in erratic behavior.
2012-05-22 18:28:10 +02:00
Gavin Andresen
43d16f0361
Merge branch 'master' of github.com:bitcoin/bitcoin
2012-05-22 11:14:30 -04:00
Gavin Andresen
d0e4051cd8
Merge branch 'optimize'
2012-05-22 11:13:00 -04:00
Gregory Maxwell
09cec19e2f
Merge pull request #1378 from rebroad/ProcessMessagesDebugCorrect
...
Correct debug.log output to show correct function the debug is coming from.
2012-05-22 08:06:05 -07:00
R E Broadley
ea591ead85
Correct debug.log output to show correct function the debug is coming from.
2012-05-22 12:06:08 +01:00
Jeff Garzik
7b671f52e0
Define BOOST_SPIRIT_THREADSAFE in all makefiles
...
rather than at each include site.
Fixes #1371
2012-05-21 22:25:54 -04:00
Pieter Wuille
63407fd6e2
Merge pull request #917 from mndrix/reopen-log-file
...
Reopen log file on SIGHUP
2012-05-21 10:04:26 -07:00
Wladimir J. van der Laan
bc5053d93e
Merge pull request #1329 from laanwj/2012_05_addrremovewhitespace
...
Filter out whitespace and zero-width non-breaking spaces in address field validator
2012-05-21 09:54:24 -07:00
Wladimir J. van der Laan
ce7896070c
Remove autocorrection of 0/i in addresses in UI
2012-05-21 18:52:56 +02:00
Wladimir J. van der Laan
25047eb3e9
Filter out whitespace and zero-width non-breaking spaces in validator
...
- Fixes issues with copy/pasting from web or html emails (#1325 )
2012-05-21 18:52:15 +02:00
Pieter Wuille
7d80d2e3d7
Reorder AppInit2
...
This reorders AppInit2 into 10 sections:
1) basic setup (OS stuff, signal handlers)
2) parameter interactions (softset)
3) interpreting options without side effects (just setting internal variables)
4) application initialization (datadir lock, daemonize, pidfile, log file)
5) network initialization (network params, proxy, binding)
6) load blockchain
7) load wallet
8) import blocks (-loadblock=)
9) load peers
10) start node/rpc threads
11) finished
This means invalid configurations will be detected as soon as possible
(in particular, before loading the block chain).
2012-05-21 18:43:22 +02:00
Wladimir J. van der Laan
3b9473afa2
Merge pull request #1365 from Diapolo/askpassphrasedialog
...
GUI: start rows in askpassphrasedialog.ui at 0 (not 1)
2012-05-21 09:41:51 -07:00
Jeff Garzik
9c137aaccf
BDB: restore DB_PRIVATE flag to environment
...
Satoshi's commits fdbf76d
and c8ad9b8
(SVN import) removed the
DB_PRIVATE flag from the environment. In part, this enables processes
other than bitcoind to examine the active database environment.
However, this incurs a slight performance penalty versus working
entirely within application memory (DB_PRIVATE). Because bitcointools
and other direct-BDB-accessing tools are not used by the vast
majority of users, prefer to default with DB_PRIVATE with the option
of disabling it if needed via -privdb=0.
2012-05-21 12:38:45 -04:00
Pieter Wuille
46784d0826
Merge pull request #1354 from fanquake/master
...
Update Header Licenses
2012-05-20 12:27:50 -07:00
Pieter Wuille
6e86c4700b
Merge pull request #1363 from Diapolo/remove_strncasecmp
...
remove strncasecmp() + strnicmp() calls use boost::algorithm::istarts_with()
2012-05-20 12:26:43 -07:00
Philip Kaufmann
4dfbc78a88
start rows in askpassphrasedialog.ui at 0 (not 1)
2012-05-20 15:55:39 +02:00
Wladimir J. van der Laan
239c11d0dd
Make testcases build, prevent windows symbol collision
2012-05-20 10:44:50 +02:00
Wladimir J. van der Laan
0832c0d166
Process address book updates incrementally
...
- No longer invalidates selection model, thus retains selection on address book changes
- Fixes selection of new address when added
2012-05-20 10:44:50 +02:00
Wladimir J. van der Laan
ab1b288fa7
Convert UI interface to boost::signals2.
...
- Signals now go directly from the core to WalletModel/ClientModel.
- WalletModel subscribes to signals on CWallet: Prepares for multi-wallet support, by no longer assuming an implicit global wallet.
- Gets rid of noui.cpp, the few lines that were left are merged into init.cpp
- Rename wxXXX message flags to MF_XXX, to make them UI indifferent.
- ThreadSafeMessageBox no longer returns the value `4` which was never used, converted to void.
2012-05-20 10:44:50 +02:00
Wladimir J. van der Laan
fe4a655042
Fine-grained UI updates
...
Gets rid of `MainFrameRepaint` in favor of specific update functions that tell the UI exactly what changed.
This improves the efficiency of various handlers. Also fixes problems with mined transactions not showing up until restart.
The following notifications were added:
- `NotifyBlocksChanged`: Block chain changed
- `NotifyKeyStoreStatusChanged`: Wallet status (encrypted, locked) changed.
- `NotifyAddressBookChanged`: Address book entry changed.
- `NotifyTransactionChanged`: Wallet transaction added, removed or updated.
- `NotifyNumConnectionsChanged`: Number of connections changed.
- `NotifyAlertChanged`: New, updated or cancelled alert. As this finally makes it possible for the UI to know when a new alert arrived, it can be shown as OS notification.
These notifications could also be useful for RPC clients. However, currently, they are ignored in bitcoind (in noui.cpp).
Also brings back polling with timer for numBlocks in ClientModel. This value updates so frequently during initial download that the number of signals clogs the UI thread and causes heavy CPU usage. And after initial block download, the value changes so rarely that a delay of half a second until the UI updates is unnoticable.
2012-05-20 10:41:54 +02:00
Wladimir J. van der Laan
563f3efda3
Merge pull request #1323 from Diapolo/string_fixes
...
translation updates / string updates
2012-05-20 01:34:06 -07:00
Wladimir J. van der Laan
6f3b919ae1
Merge pull request #1353 from Diapolo/RPC_OpenDebugLog_Icon
...
GUI: add an icon for Debug logfile -> Open in the RPC console
2012-05-20 01:32:18 -07:00
Wladimir J. van der Laan
01ecb074a7
Merge pull request #1302 from laanwj/2012_05_utilstrings
...
Get rid of snprintf (except one) with fixed buffers, shorten code
2012-05-20 01:30:18 -07:00
Jeff Garzik
ffe8b77a61
Further CDBEnv encapsulation work.
2012-05-19 20:46:52 -04:00
Jeff Garzik
94e34fa0ad
CDB::CDB: properly initialize activeTxn to NULL
2012-05-19 20:45:39 -04:00
Jeff Garzik
8b1202c52c
Remove unused nested BDB transaction support
2012-05-19 20:45:39 -04:00
Jeff Garzik
24b57e3c6a
Create CDBEnv::TxnBegin(), and use it in CDB::TxnBegin()
2012-05-19 20:44:31 -04:00
Jeff Garzik
cd9696fc97
Encapsulate BDB environment inside new CDBEnv class
...
Cleans up and organizes several scattered functions and variables related to
the BDB env. Class CDBInit() existed to provide a
guaranteed-via-C++-destructor cleanup of the db environment.
A formal CDBEnv class provides all of this inside a single wrapper.
2012-05-19 20:43:19 -04:00
Jeff Garzik
b52a270538
Reorganize(): remove spurious TxnAbort()
...
If Reorganize() fails, then its caller, CBlock::SetBestChain(),
will call TxnAbort().
Redundant TxnAbort() calls are harmless. The second will return an
error return value, with no other side effects. TxnAbort() return
values are generally never checked. The impact is nil.
2012-05-19 20:40:43 -04:00
Philip Kaufmann
00fb08158d
remove strncasecmp() + strnicmp() calls and replace that code via boost::algorithm::istarts_with() / do not call ipcInit() on Mac and Windows as this is unneeded currently
2012-05-20 00:48:34 +02:00
Jeff Garzik
cde87ee75c
Merge pull request #1360 from jgarzik/datasync
...
Default to DB_TXN_WRITE_NOSYNC for all transactional operations
2012-05-19 12:33:19 -07:00
Pieter Wuille
bd795bd543
Merge pull request #1358 from luke-jr/shared_lockchk
...
Shared code for wallet lock help and check
2012-05-19 08:34:27 -07:00
Gavin Andresen
973ca019bc
Merge pull request #1296 from Diapolo/CheckDiskSpace
...
make CheckDiskSpace() use 50 * 1024 * 1024 Bytes
2012-05-19 05:48:48 -07:00
Gavin Andresen
23e5c5b11a
Merge pull request #1289 from Diapolo/Bitcoin_as_noun
...
change strings to Bitcoin (uppercase), where it is used as a noun and up...
2012-05-19 05:45:50 -07:00
Wladimir J. van der Laan
e3f72a3555
Merge pull request #1362 from laanwj/2012_05_debugwindowicon2
...
Replace debug window icon with LGPL-licensed one (fixes #1348 )
2012-05-19 03:48:09 -07:00
Wladimir J. van der Laan
8a6a35e9d9
Replace debug window icon with LGPL-licensed one ( fixes #1348 )
2012-05-19 12:47:01 +02:00
Jeff Garzik
394b9298fa
Default to DB_TXN_WRITE_NOSYNC for all transactional operations
...
* This is safer than DB_TXN_NOSYNC, and does not appear to impact
performance.
* Applying this to the dbenv is necessary to avoid many fdatasync(2)
calls on db 5.x
* We carefully and thoroughly flush databases upon shutdown and
other important events already.
2012-05-19 01:25:06 -04:00
Luke Dashjr
29875dcb4b
Shared code for wallet lock help and check
2012-05-18 23:13:21 +00:00
Michael Hendricks
9af080c351
Reopen debug.log on SIGHUP
...
The best log rotation method formerly available was to configure
logrotate with the copytruncate option. As described in the logrotate
documentation, "there is a very small time slice between copying the
file and truncating it, so some logging data might be lost".
By sending SIGHUP to the server process, one can now reopen the debug
log file without losing any data.
2012-05-18 16:20:03 -06:00
Michael Hendricks
fea25712ca
Serialize access to debug.log stream
...
Acquire an exclusive, advisory lock before sending output to debug.log
and release it when we're done. This should avoid output from multiple
threads being interspersed in the log file.
We can't use CRITICAL_SECTION machinery for this because the debug log
is written during startup and shutdown when that machinery is not
available.
(Thanks to Gavin for pointing out the CRITICAL_SECTION problems based
on his earlier work in this area)
2012-05-18 16:19:09 -06:00
Philip Kaufmann
ff0ee876bb
change strings to Bitcoin (uppercase), where it is used as a noun and update strings to use "Qt" (and not qt or QT) / update initialisation of notificator to use qApp->applicationName() instead of a static string
2012-05-18 23:13:58 +02:00
Jeff Garzik
d6615a54c6
Merge pull request #1350 from jgarzik/del-deprecated
...
JSON-RPC: remove 'getblocknumber' deprecated RPC
2012-05-18 08:26:40 -07:00
Pieter Wuille
660ff174f2
Use boost::thread locking instead of interprocess
2012-05-18 16:56:12 +02:00
Gavin Andresen
62922c8ab0
Cache signature verifications
...
Create a maximum-10MB signature verification result cache.
This should almost double the number of transactions that
can be processed on a given CPU, because before this change
ECDSA signatures were verified when transactions were added
to the memory pool and then again when they appeared in
a block.
2012-05-18 10:41:18 -04:00
Gavin Andresen
4add41a2a6
Further DoS prevention: Verify signatures last
...
Loop over all inputs doing inexpensive validity checks first,
and then loop over them a second time doing expensive signature
checks. This helps prevent possible CPU exhaustion attacks
where an attacker tries to make a victim waste time checking
signatures for invalid transactions.
2012-05-18 10:41:18 -04:00
Gavin Andresen
7a15109c04
Remove invalid dependent orphans from memory
...
Remove orphan transactions from memory once
all of their parent transactions are received
and they're still not valid.
Thanks to Sergio Demian Lerner for suggesting this fix.
2012-05-18 10:41:17 -04:00
Gavin Andresen
77b99cf7ad
Optimize orphan transaction handling
...
Changes suggested by Sergio Demian Lerner to
help prevent potential DoS attacks.
2012-05-18 10:13:21 -04:00
Fordy
3a25a2b9b0
Update License in File Headers
...
I originally created a pull to replace the "COPYING" in crypter.cpp and
crypter.h, but it turned out that COPYING was actually the correct
file.
2012-05-18 22:02:28 +08:00
Philip Kaufmann
a3b4caac38
add an icon for Debug logfile -> Open in the RPC console / add a missing comment in rpcconsole.h
2012-05-18 14:11:55 +02:00
Wladimir J. van der Laan
4a9130aca2
Merge pull request #1346 from laanwj/2012_05_overviewpage_restore
...
Restore overview page (put transactions back within frame)
2012-05-18 01:35:31 -07:00
Wladimir J. van der Laan
320fe1015a
Restore overviewpage (put transactions back within frame)
...
- Also, change "(out of sync)" to only red, instead of red and bold, which a bit more subtle
- Move label stylesheets to xml
2012-05-18 10:33:09 +02:00
Jeff Garzik
47f48a658d
JSON-RPC: remove 'getblocknumber' deprecated RPC
...
RPC 'getblockcount' should be used instead.
2012-05-17 23:43:00 -04:00
Jeff Garzik
6d64a0bfed
Make orphan logging more verbose, displaying mapOrphanTransactions.size()
...
Old log message:
storing orphan tx df2244f6bc
New log message:
storing orphan tx df2244f6bc (mapsz 51)
Also, trim a few trailing whitespace in main.cpp.
2012-05-17 20:36:55 -04:00
Jeff Garzik
6c513a45d5
Merge pull request #1340 from rebroad/DBFlushDurationReport
...
Report how long DBFlush took.
2012-05-17 17:21:01 -07:00
Jeff Garzik
f9dd136a09
Revert "use _strnicmp (ISO C++) instead of deprecated strnicmp (POSIX) and add missing "#define strncasecmp _strnicmp" in init.cpp"
...
This reverts commit f4ac41806a
.
Reason: breaks build.
2012-05-17 20:14:24 -04:00
Jeff Garzik
c0a360ce49
Merge pull request #1345 from Diapolo/strnicmp_Win32
...
Win32: use _strnicmp (ISO C++) instead of deprecated strnicmp (POSIX)
2012-05-17 15:53:38 -07:00
R E Broadley
757cec9ddd
Should only be mapped when the getdata is done.
...
Without this change, mappings will be created even after AlreadyHave equals true, and will never be erased.
2012-05-17 23:01:00 +01:00
R E Broadley
53d0e6dd6a
Report how long DBFlush took.
2012-05-17 22:56:14 +01:00
Philip Kaufmann
f4ac41806a
use _strnicmp (ISO C++) instead of deprecated strnicmp (POSIX) and add missing "#define strncasecmp _strnicmp" in init.cpp
2012-05-17 23:20:47 +02:00
Wladimir J. van der Laan
f0fc95a143
Merge pull request #1314 from Diapolo/Wallet_Transaction_state_Overviewpage
...
GUI: add 2 labels to the overviewpage that display Wallet and Transaction status
2012-05-17 14:13:23 -07:00
R E Broadley
83e047eaa7
Was showing a negative number. Changes to positive, since negative (T minus) usually indicates a future event.
2012-05-17 21:58:05 +01:00
Gavin Andresen
f718aedd9f
Refactor: GetRandHash() method for util
2012-05-17 16:33:27 -04:00
Gavin Andresen
096e06dbb5
Refactor: move code from key.h to key.cpp
2012-05-17 16:33:26 -04:00
Philip Kaufmann
c26f3a9bd1
add 2 labels to the overviewpage that display Wallet and Transaction status (obsolete or current) / cleanup overviewpage XML ui-file
2012-05-17 21:49:32 +02:00
Wladimir J. van der Laan
f1e7570755
Merge pull request #1336 from laanwj/2012_05_consoleicon
...
Add icon for debug window
2012-05-17 11:38:08 -07:00
Wladimir J. van der Laan
8ece75aee1
Add icon for debug window
2012-05-17 20:34:30 +02:00
Jeff Garzik
7563424f32
Merge pull request #1334 from rebroad/Exiting2Exited
...
Corrected grammar. As per Principle Of Least Surprise.
2012-05-17 11:29:09 -07:00
R E Broadley
1d764d631f
Corrected grammar. As per Principle Of Least Surprise.
2012-05-17 18:52:38 +01:00
R E Broadley
8c35bfbadf
Add /bin/sh to bitcoin-qt.pro - as some filesystems don't have the execute flag.
2012-05-17 18:48:09 +01:00
Philip Kaufmann
5f9861953e
fix RenameOver() and FileCommit() functions, to not generate compilation errors
2012-05-17 18:30:09 +02:00
Jeff Garzik
cf2f7c30a3
Merge pull request #1295 from jgarzik/txn-retval
...
[FIX] Always check return values of TxnBegin() and TxnCommit()
2012-05-17 08:49:16 -07:00
Jeff Garzik
d17ac27a72
Merge pull request #1316 from jgarzik/dead-code
...
Remove dead code: CTxDB::EraseBlockIndex(), CBlockIndex::EraseBlockFromDisk()
2012-05-17 08:47:54 -07:00
Philip Kaufmann
8b4d653663
allow translation of "options" used in the --help message / split translation of RPC console welcome message and remove the need to take care of "<br>" / remove some spaces in strings and misc other stuff related to translations
2012-05-17 15:49:00 +02:00
Jeff Garzik
928d3a011c
CAddrDB: Replace BDB-managed addr.dat with internally managed peers.dat
2012-05-16 22:11:19 -04:00
Jeff Garzik
768e5d52fb
Add new utility functions FileCommit(), RenameOver()
2012-05-16 19:25:25 -04:00
Wladimir J. van der Laan
49232d1abf
Merge pull request #1319 from Diapolo/add_new_languages
...
add 4 new translations bg, el_GR, fr and pt_PT (based on transifex fetch from today)
2012-05-16 15:48:48 -07:00
Wladimir J. van der Laan
adc704563c
Add missing Q_OBJECT in bitcoin.cpp
...
Fixes translating HelpMessageBox strings.
2012-05-16 18:52:14 +02:00
Wladimir J. van der Laan
d44ac73925
Merge pull request #1321 from laanwj/2012_05_updatemaintrans
...
Update bitcoinstrings.cpp and bitcoin_en.ts
2012-05-15 22:27:33 -07:00
Wladimir J. van der Laan
746ea6bd86
Update bitcoinstrings.cpp and bitcoin_en.ts
2012-05-16 07:24:56 +02:00
Philip Kaufmann
cd8c905dfe
add 4 new translations bg, el_GR, fr and pt_PT (based on transifex fetch from today)
2012-05-15 23:44:49 +02:00
Jeff Garzik
a7d45c5a7a
Remove dead code: CTxDB::EraseBlockIndex(), CBlockIndex::EraseBlockFromDisk()
2012-05-15 13:36:25 -04:00
Pieter Wuille
385f730f31
Hopefully final fix for the stuck blockchain issue
...
Immediately issue a "getblocks", instead of a "getdata" (which will
trigger the relevant "inv" to be sent anyway), and only do so when
the previous set of invs led us into a known and attached part of
the block tree.
2012-05-15 17:53:46 +02:00
Philip Kaufmann
34aa3112c8
adapt user-experience from messagepage / move placeholderTexts from XML to source to avoid a problem with Qt < 4.7 / add eventFilter for address field to select text when clicking in / add Clear All button / rework strings
2012-05-15 08:04:51 +02:00
Wladimir J. van der Laan
2643ce97ae
Merge pull request #1307 from Diapolo/fix_OpenLogFile
...
GUI fix: DebugLog file opens twice after clicking "Open" in RPC Console Information tab
2012-05-14 22:18:20 -07:00
Gregory Maxwell
20f19893cb
Merge pull request #1262 from Diapolo/no_double_timestamps
...
no more double timestamps in debug.log
2012-05-14 18:59:28 -07:00
Philip Kaufmann
8892579f8b
fix DebugLog file opens twice after clicking "Open" in RPC Console Information tab
2012-05-14 22:26:15 +02:00
Ricardo M. Correia
5849bd472a
Fix signed subtraction overflow in CBigNum::setint64().
...
As noticed by sipa (Pieter Wuille), this can happen when CBigNum::setint64() is
called with an integer value of INT64_MIN (-2^63).
When compiled with -ftrapv, the program would crash. Otherwise, it would
execute an undefined operation (although in practice, usually the correct one).
2012-05-14 21:26:02 +02:00
Ricardo M. Correia
62e0453ce0
Add test case for CBigNum::setint64().
...
One of the test cases currently aborts when using gcc's flag -ftrapv, due to
negating an INT64_MIN int64 variable, which is an undefined operation.
This will be fixed in a subsequent commit.
2012-05-14 21:26:01 +02:00
Wladimir J. van der Laan
bb361cc644
Merge pull request #906 from sje397/ValidateMessage
...
Add a menu option and dialog to verify a signed message
2012-05-14 11:11:16 -07:00
Wladimir J. van der Laan
7dc04f4091
Merge pull request #1301 from laanwj/2012_05_rpcscrolltoend
...
RPC console: scroll to the end when user enters a command
2012-05-14 11:05:04 -07:00
Wladimir J. van der Laan
29b79e4c0e
Get rid of snprintf (except one) with fixed buffers, shorten code
...
- Use strprintf or vstrprintf instead of snprintf
2012-05-14 20:01:26 +02:00
Wladimir J. van der Laan
5a060b8dc8
RPC console: scroll to the end when user enters a command
...
- Ensures that the command and reply is visible
2012-05-14 18:17:12 +02:00
Pieter Wuille
91dace35a1
Do not listen on blocked networks
2012-05-14 17:52:51 +02:00
Pieter Wuille
55bb0cfbb6
Allow binding to the any address, and report failure
2012-05-14 17:52:50 +02:00
Pieter Wuille
0f1707de67
-onlynet instead of -blocknet
2012-05-14 17:52:45 +02:00
Philip Kaufmann
966ae00fe4
make CheckDiskSpace() use a global static const uint64 for checking required disk space and remove 2 ugly spaces from a message string
2012-05-14 14:02:36 +02:00
Jeff Garzik
0fb78eae34
Always check return values of TxnBegin() and TxnCommit()
2012-05-14 01:11:11 -04:00
Ricardo M. Correia
fe78c9ae8b
Don't overflow signed ints in CBigNum::setint64().
...
CBigNum::setint64() does 'n <<= 8', where n is of type "long long".
This leads to shifting onto and past the sign bit, which is undefined
behavior in C++11 and can cause problems in the future.
2012-05-14 02:53:27 +02:00
Pieter Wuille
ca81464697
Use getnameinfo() to get canonical IPv6 addresses
2012-05-14 01:41:15 +02:00
Pieter Wuille
09b4e26a44
Really do not consider blocked networks local
2012-05-13 23:50:55 +02:00
Wladimir J. van der Laan
524843af01
Merge pull request #1283 from laanwj/2012_05_prevent_tooltip_infiniteloop
...
Prevent tooltip filter from ever causing infinite loops
2012-05-13 13:04:20 -07:00
Ricardo M. Correia
4843b55fd1
Make CNetAddr::GetHash() return an unsigned val.
...
This prevents an undefined operation in main.cpp, when shifting the hash value
left by 32 bits.
Shifting a signed int left into the sign bit is undefined in C++11.
2012-05-13 21:42:54 +02:00
Wladimir J. van der Laan
a3957d089a
Merge pull request #1288 from Diapolo/sendcoinsdialog_strings
...
update some strings used as warning messages in sendcoinsdialog.cpp
2012-05-13 12:42:32 -07:00
Wladimir J. van der Laan
5b36c0336f
Merge pull request #1284 from laanwj/2012_05_helpmessage
...
Move help message out of AppInit2
2012-05-13 12:39:35 -07:00
Jeff Garzik
28d257da11
Merge pull request #1287 from sipa/noirc6
...
Only encode IPv4 addresses in IRC nicks
2012-05-13 11:48:27 -07:00
Philip Kaufmann
51ce20d5da
update some strings used as warning messages in sendcoinsdialog.cpp
2012-05-13 20:20:38 +02:00
Wladimir J. van der Laan
9f5b11e6fd
Move help message out of AppInit2
...
- Solves #1278 , attempts to address #1049
- Removes \t's from help message that are removed afterwards anyway
- Moves UI-specific command-line options help to UI code
- Moves "-detachdb" out of #ifdef USE_UPNP
2012-05-13 18:41:19 +02:00
Pieter Wuille
1653f97c8f
Do not consider blocked networks local
2012-05-13 15:11:51 +02:00
Pieter Wuille
8f737d28a6
Only encode IPv4 addresses in IRC nicks
2012-05-13 15:07:31 +02:00
Pieter Wuille
9fc0a15cd4
Merge pull request #1285 from sipa/initerror
...
Improve error reporting at startup
2012-05-13 06:01:21 -07:00
Philip Kaufmann
0985816bf6
ensure that no double timestamps show up in the debug.log, by removing manual timestamps from the source (now only -logtimestamps parameter adds timestamps to debug.log)
2012-05-13 14:36:35 +02:00
Pieter Wuille
af4006b3f5
Enforce -nodiscover better
2012-05-13 14:22:15 +02:00
Pieter Wuille
ac7c7ab99a
Improve error reporting at startup
2012-05-13 12:35:39 +02:00
Wladimir J. van der Laan
67d4cbab46
Move GetStartOnSystemStartup and SetStartOnSystemStartup to GUI code
2012-05-13 12:31:28 +02:00
Wladimir J. van der Laan
82f66082b9
Merge pull request #1270 from laanwj/2012_05_overviewpage2
...
When a transaction is clicked on overview page, focus it on history page
2012-05-13 02:53:25 -07:00
Wladimir J. van der Laan
3986a05c62
Merge pull request #1274 from Diapolo/QR_Code
...
rename "QR-Code Dialog" to "QR Code Dialog" in qrcodedialog.ui as this spelling is used all over the code
2012-05-13 00:45:20 -07:00
Wladimir J. van der Laan
6da3b29e37
Merge pull request #1275 from Diapolo/askpassphrasedialog
...
remove string "TextLabel" from warningLabel, as this is unneeded and as ...
2012-05-13 00:40:26 -07:00
Wladimir J. van der Laan
99fdc1d829
Prevent tooltip filter from ever causing infinite loops
2012-05-13 09:27:45 +02:00
Wladimir J. van der Laan
df1a110d2e
Merge pull request #1268 from Diapolo/transactiondialog
...
change size of transactiondialog, to allow display of transaction-id wit...
2012-05-13 00:16:54 -07:00
Jeff Garzik
80af836ce0
Merge pull request #1277 from Diapolo/IPv6_IPv4_strings
...
use "IPv6" and "IPv4" in strings as these are the official spellings
2012-05-12 18:59:31 -07:00
Gregory Maxwell
6f7d45a323
Merge pull request #1272 from sipa/ipv6fixes
...
A few IPv6 fixes
2012-05-12 18:55:36 -07:00
Pieter Wuille
22db3f2c77
Fix warning about uninitialized value
...
Only reported when using -flto.
2012-05-13 01:36:46 +02:00
Pieter Wuille
5a3cb32e59
Take -port into account when resolving -bind's
2012-05-13 01:26:14 +02:00
Philip Kaufmann
ea933b03b4
use "IPv6" and "IPv4" in strings as these are the official spellings and make ParseNetwork() in netbase.cpp case-insensitive
2012-05-13 01:12:24 +02:00
Pieter Wuille
139d2f7c29
Keep local service information per address
...
Keep local service information per CNetAddr instead of per CService,
but move the port into the information kept on it.
2012-05-13 01:03:05 +02:00
Pieter Wuille
89b5616d10
Do not signal outbound semaphore if uninitialized
2012-05-13 00:49:12 +02:00
Pieter Wuille
45dcf63a62
Only check for port# after : in ConnectSocketByName
2012-05-13 00:49:12 +02:00
Pieter Wuille
a6cd0b08f6
Partially revert f621326
: xCXXFLAGS
2012-05-13 00:41:46 +02:00
Gregory Maxwell
85a2229264
Merge pull request #1269 from laanwj/2012_05_consoleimprovements
...
UI console improvements
2012-05-12 15:33:57 -07:00
Philip Kaufmann
5e19030aa1
remove string "TextLabel" from warningLabel, as this is unneeded and as such is a silly translation less to do :)
2012-05-13 00:16:50 +02:00
Philip Kaufmann
4dca553e66
set minimum size allowed by Qt Creator and rename "QR-Code Dialog" to "QR Code Dialog" as this spelling is used all over the code
2012-05-13 00:03:58 +02:00
Wladimir J. van der Laan
ae744c8b78
RPC console: don't crash on invalid input exception
2012-05-12 18:39:26 +02:00
Wladimir J. van der Laan
c6aa86afc2
Convert RPC console to QTextEdit instead of QTableView
...
* This allows copy/pasting whole or partial messages
* Handle output more consistently in console
* No more scrollbars-in-scrollbars: by setting per-pixel scrolling on the table, cells can have any height
* Decorations for "request" and "reply" are changed to the txin and txout icons instead of colored squares
2012-05-12 18:39:26 +02:00
Pieter Wuille
839c4e7966
Fix initialization of inaddr_any
2012-05-12 17:20:43 +02:00
Jeff Garzik
d960a335f8
Merge pull request #1266 from Diapolo/tab_to_space
...
convert 4 tabs into 4 x 4 spaces in bitcoinrpc.cpp
2012-05-12 08:02:57 -07:00
Wladimir J. van der Laan
3ef1f41550
When a transaction is clicked on overview page, focus it on history page
2012-05-12 15:32:22 +02:00
Wladimir J. van der Laan
97ec4e50b1
Merge pull request #1263 from Diapolo/RPCCon_ClientStartupTime
...
GUI: add the client startup time to the debug window...
2012-05-12 03:44:22 -07:00
Philip Kaufmann
55f19cb809
change size of transactiondialog, to allow display of transaction-id without an ugly line-break
2012-05-12 11:12:37 +02:00
Philip Kaufmann
a24ea3dab7
add Alt-Shortcut for "Clear All" in sendcoinsdialog.ui
2012-05-12 11:11:00 +02:00
Philip Kaufmann
bc05562730
convert 4 tabs into 4 x 4 spaces in bitcoinrpc.cpp
2012-05-12 11:06:30 +02:00
Wladimir J. van der Laan
661834d02b
Merge pull request #1261 from laanwj/2012_05_escapecsv
...
Properly escape strings when exporting CSV
2012-05-11 23:30:04 -07:00
Gregory Maxwell
9dfa3c3e04
Merge pull request #1264 from fanquake/master
...
Correct Date
2012-05-11 20:40:57 -07:00
Fordy
46667ba3e4
Correct Date
2012-05-12 11:36:37 +08:00
Fordy
8bb9660baa
Correct Date
2012-05-12 11:32:03 +08:00
Pieter Wuille
a3878873f3
Merge pull request #1021 from sipa/ipv6
...
IPv6 node support
2012-05-11 18:23:56 -07:00
Gregory Maxwell
c05271901a
Merge pull request #1260 from sipa/splitsync
...
Split synchronization mechanisms from util.{h,cpp}
2012-05-11 18:05:49 -07:00
Philip Kaufmann
d2f7778cc7
add the client startup time to the debug window / rename Version label to Client, which is better suiting now / add IBeamCursor for selectable text on the information page / make ">" sign on RPC page untranslatable / re-order XML-file tags to match real GUI element order
2012-05-12 00:28:58 +02:00
Wladimir J. van der Laan
875f71d4ef
Properly escape " in strings when exporting CSV
2012-05-11 20:17:09 +02:00
Jeff Garzik
b34c5f3c0f
Merge pull request #1101 from jgarzik/http11
...
Multithreaded JSON-RPC with HTTP 1.1 Keep-Alive support
2012-05-11 09:57:08 -07:00
Pieter Wuille
7f3ccb59da
Split synchronization mechanisms from util.{h,cpp}
2012-05-11 18:13:51 +02:00
Gregory Maxwell
eb793429f1
Merge pull request #1255 from sipa/fixversion
...
Fix version numbers of archive builds
2012-05-11 08:29:47 -07:00
Pieter Wuille
5456ef3092
Use polling instead of boost's broken semaphore on OSX
2012-05-11 17:02:11 +02:00
Pieter Wuille
c59abe2589
Use semaphores instead of condition variables
2012-05-11 17:02:11 +02:00
Jeff Garzik
271f9faf9e
Merge pull request #1254 from jgarzik/mempool-logging
...
CTxMemPool: consolidate two frequently-printed debug.log lines into one
2012-05-11 07:53:08 -07:00
sje397
0c587936c7
Add a menu option to verify a signed message
...
(Also move 'setAttribute(Qt::WA_DeleteOnClose)' out of QRCodeDialog)
2012-05-12 00:13:13 +10:00
Wladimir J. van der Laan
2692ed3f01
Merge pull request #1258 from Diapolo/RPCCon_never_0_Blocks
...
GUI RPC Console: if there is no current block number available display N/A on totalBlocks label,...
2012-05-11 06:40:04 -07:00
Wladimir J. van der Laan
23f59e7023
Merge pull request #1259 from Diapolo/GUI_testnet_UX
...
GUI: allow easier use of the testnet icon
2012-05-11 06:35:50 -07:00
Philip Kaufmann
37244c2f7f
add calls to qApp->setWindowIcon(), to remove the need to set window icons for testnet with additional calls
2012-05-11 15:31:44 +02:00
Pieter Wuille
8f10a28890
Separate listening sockets, -bind=<addr>
2012-05-11 15:29:20 +02:00
Pieter Wuille
7fa4443f77
Keep port information for local addresses
2012-05-11 15:29:19 +02:00
Pieter Wuille
457754d2c2
Add -blocknet to prevent connections to a given network
2012-05-11 15:29:19 +02:00
Pieter Wuille
c5b3ffd8d5
Use NET_ identifiers in CNetAddr::GetGroup()
2012-05-11 15:29:19 +02:00
Pieter Wuille
623b987813
Add -noproxy to circumvent proxy for some network
2012-05-11 15:29:19 +02:00
Pieter Wuille
090e5b40f1
Limited relaying/storing of foreign addresses
...
Introduce a boolean variable for each "network" (ipv4, ipv6, tor, i2p),
and track whether we are likely to able to connect to it. Addresses in
"addr" messages outside of our network get limited relaying and are not
stored in addrman.
2012-05-11 15:29:19 +02:00
Pieter Wuille
d32148567f
Preliminary support for Tor/I2P hidden services
...
There are plans to let Bitcoin function as Tor/I2P hidden service.
To do so, we could use the established encoding provided by OnionCat
and GarliCat (without actually using those tools) to embed Tor/I2P
addresses in IPv6.
This patch makes these addresses considered routable, so they can
travel over the Bitcoin network in 'addr' messages. This will hopefully
make it easier to deploy real hidden service support later.
2012-05-11 15:29:19 +02:00
Pieter Wuille
23aa78c405
IPv6 node support
...
This will make bitcoin relay valid routable IPv6 addresses, and when
USE_IPV6 is enabled, listen on IPv6 interfaces and attempt connections
to IPv6 addresses.
2012-05-11 15:29:19 +02:00
Wladimir J. van der Laan
97521b5257
Add missing #include for GetDataDir
2012-05-11 13:18:25 +02:00
Philip Kaufmann
66331f2b51
if there is no current block number available display N/A on totalBlocks label, instead of 0, which can not ever be true
2012-05-11 12:29:31 +02:00
Pieter Wuille
1f5a7cef6f
Fix version numbers of archive builds
2012-05-11 11:44:53 +02:00
Wladimir J. van der Laan
a8fef7f569
Merge pull request #1251 from Diapolo/transactionview_comments
...
add 2 comments to transactionview.cpp to ensure no one moves setPlacehol...
2012-05-11 02:43:42 -07:00
Philip Kaufmann
58b01afc50
guiutil.cpp/.h: fix a -Wreorder compiler warning and make constructor for ToolTipToRichTextFilter explicit
2012-05-11 11:32:04 +02:00
Philip Kaufmann
4d3dda5d9f
add code to open (display) debug.log on Windows with the associated application and add a button to the Information page in the Debug console
2012-05-11 11:10:34 +02:00
Wladimir J. van der Laan
b66737e6df
Merge pull request #1204 from Diapolo/messagepage_focus_placeholder
...
GUI messagepage: add placeholder text to address field (like in sendcoins dialog)...
2012-05-10 23:55:34 -07:00
Wladimir J. van der Laan
b8a5e30d91
Merge pull request #1090 from laanwj/2012_04_wraptooltips
...
Allow Qt to wrap long tooltips (fixes #1063 )
2012-05-10 23:54:53 -07:00
Wladimir J. van der Laan
f93727aa56
Merge pull request #1206 from Diapolo/passphrasedialog
...
small passphrasedialog update
2012-05-10 23:53:24 -07:00
Wladimir J. van der Laan
c485a0636e
Merge pull request #1238 from Diapolo/tray
...
tray-icon - extend available options with Debug window
2012-05-10 23:52:21 -07:00
Jeff Garzik
33a53bc13b
CTxMemPool::accept(): do not log FetchInputs failure redundantly
...
FetchInputs already logs failures internally. This commit makes the logging
more consistent with other FetchInputs callsites also.
Prior to this commit, two log lines were logged for one condition:
ERROR: FetchInputs() : de15fde415 mempool Tx prev not found a2c75da227
ERROR: CTxMemPool::accept() : FetchInputs failed de15fde415
After this commit, only one line is logged:
ERROR: FetchInputs() : e0507ab2c7 mempool Tx prev not found 9a620262cd
2012-05-10 20:31:46 -04:00
Jeff Garzik
133dce6a37
CTxMemPool: consolidate two frequently-printed debug.log lines into one
...
Previously, a single TX would trigger two log lines in quick succession,
addUnchecked(): size 152
CTxMemPool::accept() : accepted c4cfdd48b7
After this change, only one log line is used:
CTxMemPool::accept() : accepted 98885e65db (poolsz 26)
2012-05-10 20:20:31 -04:00
Philip Kaufmann
81c45c0a94
optionsdialog.cpp: rename "Start Bitcoin on window system startup" to "Start Bitcoin on system login" and move it to Main / hide "Window" Options on Mac as there are currently none available / remove an unused variable / add Alt-Shortcuts where they were missing / allow translation of "default"
2012-05-10 18:00:00 +02:00
Philip Kaufmann
840470ec79
add placeholder text to address field (like in sendcoins) and set focus to address field on opening messagepage or "Clear All" / consolidate gotoMessagePage() to 1 function / rename windowTitle to "Sign Message Dialog"
2012-05-10 15:50:24 +02:00
Philip Kaufmann
5d21ffe16b
add 2 comments to transactionview.cpp to ensure no one moves setPlaceholderText to the XML file (after this all parts in the code that use setPlaceholderText have this comment
2012-05-10 15:42:26 +02:00
Wladimir J. van der Laan
037a8daee6
Merge pull request #1239 from Diapolo/testnet_GUI
...
GUI changes while on testnet
2012-05-09 22:42:58 -07:00
Wladimir J. van der Laan
a2de039ec4
Merge pull request #1199 from laanwj/2012_05_signmessage_autoselect
...
signmessage: auto-select signature when field is focused/clicked
2012-05-09 22:41:53 -07:00
Luke Dashjr
5d53f48acb
Bugfix: getmemorypool: NULL pindexPrev across CreateNewBlock, in case it fails
2012-05-09 18:12:01 +00:00
Gavin Andresen
e6fd96f054
Fix osx build
2012-05-09 13:56:53 -04:00
Luke Dashjr
5146599b01
Merge branch 'bugfix_CNBerr_daggy' into bugfix_CNBerr
...
Conflicts:
rpc.cpp
2012-05-09 17:14:08 +00:00
Wladimir J. van der Laan
9245ff5705
Merge pull request #1212 from Diapolo/overviewpage
...
move many overviewpage settings from code to ui XML-file...
2012-05-09 09:38:32 -07:00
Gregory Maxwell
1eb2d8e0bf
Merge pull request #1243 from laanwj/2012_05_uiconsole_focus
...
Automatically focus entry widget when console tab comes into focus
2012-05-09 08:34:00 -07:00
Wladimir J. van der Laan
0981b80c29
Merge pull request #1220 from laanwj/2012_05_organize_optionsdialog
...
Organize optionsdialog (split off Window and Network page) and add option to change language
2012-05-09 08:33:44 -07:00
Wladimir J. van der Laan
bfbfb53ed4
Add key shortcuts for RPC console tabs
...
- Alt-I for Information, Alt-C for Console
2012-05-09 17:32:17 +02:00
Wladimir J. van der Laan
b84172434d
Automatically focus entry widget when console tab comes into focus
...
Fixes #1241
2012-05-09 17:15:09 +02:00
Jeff Garzik
9d9aae0396
Merge pull request #1237 from gmaxwell/master
...
Kill warning from unavoidable signed/unsigned comparison in bitcoinrpc.cpp.
2012-05-09 07:59:13 -07:00
Jeff Garzik
11b729d8a2
Merge pull request #1134 from Diapolo/util-updates
...
small util.cpp/h changes
2012-05-09 07:54:25 -07:00
Jeff Garzik
d54e6e8359
Merge pull request #1225 from Diapolo/net_cpp_if_clause
...
fix an incorrect if-clause in net.cpp
2012-05-09 07:50:27 -07:00
Philip Kaufmann
2abbe5fc88
Show testnet icon for tray-menu option Show/Hide / set tooltip for tray icon to match non-testnet text (just [testnet] added) / remove obsolete title_testnet variable'
2012-05-09 15:12:31 +02:00
Philip Kaufmann
1ad3b7d5c0
add Debug window to tray-menu / switch sendCoinsAction and receiveCoinsAction in tray to match button ordering in the client window
2012-05-09 14:38:06 +02:00
Gregory Maxwell
d285c7bf2c
Kill warning from unavoidable signed/unsigned comparison in bitcoinrpc.cpp.
2012-05-09 07:17:30 -04:00
Gregory Maxwell
2e767410b8
Merge pull request #1230 from sipa/warnings
...
Clean up warnings
2012-05-09 04:07:24 -07:00
Wladimir J. van der Laan
c164396ddc
Merge pull request #1235 from Diapolo/translation_en
...
update bitcoin_en.ts (translation master file) to match current master branch as of 2012-05-09
2012-05-09 04:06:47 -07:00
Gregory Maxwell
92dca80975
Merge pull request #1232 from TheBlueMatt/lockcontention
...
Fix DEBUG_LOCKCONTENTION
2012-05-09 03:55:02 -07:00
Philip Kaufmann
11353b0c57
update bitcoin_en.ts (translation master file) to match current master branch as of 2012-05-09
2012-05-09 12:38:51 +02:00
Philip Kaufmann
3e468840bd
util.h/.ccp: modifiy some comments / rename MyGetSpecialFolderPath() -> GetSpecialFolderPath(), set fCreate default to true and remove the fallback (not Win >= Vista compatible anyway) / remove namespace fs stuff where only used once / misc small changes'
2012-05-09 12:22:58 +02:00
Philip Kaufmann
3b6ed2294b
fix an incorrect if-clause in net.cpp
2012-05-09 09:11:13 +02:00
Philip Kaufmann
50a3855082
harmonize the use of ellipsis ("...") to be used in menus, but not on buttons / update some strings to be more informative
2012-05-09 09:06:51 +02:00
Wladimir J. van der Laan
9e11cb53dd
Merge pull request #1215 from laanwj/2012_05_nogridtables
...
Make user actions more straightforward in address book
2012-05-08 23:34:10 -07:00
Wladimir J. van der Laan
5ac114c756
Make it possible to set user interface language from options dialog
2012-05-09 07:45:47 +02:00
Wladimir J. van der Laan
6ddf861078
Organize optionsdialog (split off Window and Network page)
2012-05-09 07:45:47 +02:00
Matt Corallo
2ea78ec7fd
Fix DEBUG_LOCKCONTENTION
2012-05-09 01:41:07 -04:00
Philip Kaufmann
09570add5f
remove 2 ugly spaces from a string used in translations
2012-05-09 06:51:25 +02:00
Pieter Wuille
f621326c24
Clean up warnings
...
* Use -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameters
* Remove xCXXFLAGS usage in makefile.unix
* Fix several recent and older sign-compare warnings
2012-05-09 03:48:30 +02:00
Jeff Garzik
781fc2c8c0
Revert part of 1302257e
: don't update CXXFLAGS, only xCXXFLAGS
2012-05-08 21:18:35 -04:00
Jeff Garzik
1302257e5d
makefile.unix: add -Wall to default CXXFLAGS
...
Additionally, remove -Wno-sign-compare from alt CXXFLAGS, as
that is no longer a problem.
2012-05-08 21:02:28 -04:00
David Joel Schwartz
96c5269511
RPC: Support HTTP/1.0 and HTTP/1.1, including the proper use of keep-alives
2012-05-08 20:25:39 -04:00
David Joel Schwartz
e9205293bd
Support multi-threaded JSON-RPC
...
Change internal HTTP JSON-RPC server from single-threaded to
thread-per-connection model. The IP filter list is applied prior to starting
the thread, which then processes the RPC.
A mutex covers the entire RPC operation, because not all RPC operations are
thread-safe.
[minor modifications by jgarzik, to make change upstream-ready]
2012-05-08 20:11:17 -04:00
Jeff Garzik
203f9e6c00
Merge branch 'tmp-ipv6' into merge-ipv6
2012-05-08 19:43:17 -04:00
Gregory Maxwell
82ab06b849
Merge pull request #886 from luke-jr/getblock_full
...
More details for getblock and gettransaction
2012-05-08 15:31:52 -07:00
Philip Kaufmann
2387a7a969
remove 2 obsolete functions from init.h that moved to util.h
2012-05-08 23:22:36 +02:00
Luke Dashjr
7e63dc3615
Support for decomposing scripts as "obj"
2012-05-08 21:04:57 +00:00
Luke Dashjr
74335bd32a
Second parameter to JSON-RPC getblock/gettransaction: decompositions
...
This is an Object specifying how to decompose specific elements.
Currently supported:
- "tx": "no", "hash", "hex", "obj"
- "script": "no", "hex", "asm"
2012-05-08 21:04:52 +00:00
Luke Dashjr
d4e09300f3
Add block "confirmations" to getblock, mainly for identifying orphans
2012-05-08 21:04:47 +00:00
Jeff Garzik
a2ea797593
Merge pull request #1180 from jgarzik/sign-compare
...
Fix final sign comparison warnings
2012-05-08 13:50:27 -07:00
Gregory Maxwell
2f1dca645b
Merge pull request #841 from sipa/getalltransactions
...
gettransaction RPC for non-wallet transactions
2012-05-08 13:19:11 -07:00
Gregory Maxwell
f1ae31d8af
Merge pull request #883 from sipa/loadblock
...
Add -loadblock to load from an external blk000?.dat file
2012-05-08 12:37:27 -07:00
Gregory Maxwell
fa8cc47c4f
Merge pull request #1075 from laanwj/2012_04_consoleui
...
Add UI RPC console / debug window
2012-05-08 12:26:49 -07:00
Gregory Maxwell
a5f95d75a1
Increase client version to 0.6.99
2012-05-08 15:22:02 -04:00
Wladimir J. van der Laan
1f7e0e51aa
Merge pull request #1219 from luke-jr/rm_fee_tip
...
Bitcoin-Qt: Remove redundant tooltip on optional transaction fee. Fixes #1218
2012-05-07 12:36:26 -07:00
Luke Dashjr
1ef3a48c03
Bitcoin-Qt: Remove redundant tooltip on optional transaction fee. Fixes #1218
2012-05-07 19:22:09 +00:00
Wladimir J. van der Laan
356c3cad1a
Make user action more straightforward in address book
...
- Add all actions that can be triggered with buttons to the context menu
- Hide delete action from context menu for receiving tab
2012-05-07 11:30:23 +02:00
Gregory Maxwell
f49d4f0e93
Merge pull request #1196 from sipa/fix_948
...
Prevent stuck download: correct solution
2012-05-06 16:58:31 -07:00
Wladimir J. van der Laan
7d5bb42946
Move back setPlaceholderText to code, from xml, as this broke building with Qt 4.6
2012-05-07 00:19:22 +02:00
Wladimir J. van der Laan
46692fc929
Merge pull request #1189 from Diapolo/fix#952
...
fix for #952 (send coins tab glitch)
2012-05-06 14:49:08 -07:00
Pieter Wuille
6860133373
Prevent stuck download: correct solution
...
Pull request #948 introduced a fix for nodes stuck on a long side branch
of the main chain. The fix was non-functional however, as the additional
getdata request was created in a first step of processing, but dropped
in a second step as it was considered redundant. This commits fixes it
by sending the request directly.
2012-05-06 23:37:45 +02:00
Philip Kaufmann
52d4975825
passphrasedialog: change dialog title to "Passphrase Dialog" / remove style-sheet for bold font and use Qt Designer option / remove an unused label default-text and remove an obsolete clear()'
2012-05-06 22:11:26 +02:00
Philip Kaufmann
4295311da3
move many overviewpage settings from code to ui XML-file / removed ability to translate "0 BTC" and "123.456 BTC" as this is only used as preview in the Qt Designer anyway / set mouse cursor to IBeam for selectable labels
2012-05-06 16:57:12 +02:00
Wladimir J. van der Laan
0e69fc6e84
Merge pull request #1209 from laanwj/2012_05_hideonshutdown
...
Hide UI immediately after leaving the main loop
2012-05-05 23:30:55 -07:00
Wladimir J. van der Laan
46f552a9fe
Hide UI immediately after leaving the main loop.
...
Prevents it from seeming to hang during shutdown if shutdown is triggered while the window is open.
2012-05-06 08:28:20 +02:00
Gregory Maxwell
4fdc8a62d0
Merge pull request #1207 from sipa/fix_addrman
...
Fix addrman crashes
2012-05-05 22:23:57 -07:00
Gregory Maxwell
5b8def797c
Merge pull request #1160 from retep/master
...
Minor error message fix
2012-05-05 12:34:46 -07:00
Pieter Wuille
bd1aabe941
Bugfix: store source address in addrman
2012-05-05 21:33:29 +02:00
Pieter Wuille
56f1e91239
Fix addrman crashes
...
A function returned the element to remove from a bucket, instead of its
position in that bucket. This function was only called when a tried
bucket overflowed, which only happens after many outgoing connections
have been made.
Closes : #1065 , #1156
2012-05-05 21:33:26 +02:00
Pieter Wuille
29a86a1735
Add extra asserts to addrman
2012-05-05 21:32:41 +02:00
Luke Dashjr
82e6b92b0a
Bugfix: %-12I64d is not valid and causes the parameter to be skipped, use %12"PRI64d" instead
2012-05-05 14:24:55 -04:00
Wladimir J. van der Laan
46c08874aa
Merge pull request #1201 from Diapolo/about-dialog
...
changed cursor for selectable text on the about dialog to IBeamCursor...
2012-05-05 04:22:04 -07:00
Philip Kaufmann
7b74bd4928
changed cursor for selectable text on the about dialog to IBeamCursor and removed an unused tag
2012-05-05 12:55:51 +02:00
Wladimir J. van der Laan
dd62ca1b29
Merge pull request #1202 from Diapolo/messagepage
...
change text on message.ui from "Copy to Clipboard" to "Copy Signature"...
2012-05-05 03:31:11 -07:00
Philip Kaufmann
d7d7d81a6a
change text on message.ui from "Copy to Clipboard" to "Copy Signature" and
...
add an Alt-Shortcut to "Clear &All"
2012-05-05 12:03:02 +02:00
Wladimir J. van der Laan
6ad47ddf40
Merge pull request #1203 from Diapolo/qrcodedialog
...
renamed qrcodedialog.ui window title to "QR-Code Dialog"...
2012-05-05 02:59:44 -07:00
Philip Kaufmann
092522af6c
renamed qrcodedialog.ui window title to "QR-Code Dialog" and changed window size to the minimum values Qt Creator allows me to set
2012-05-05 11:43:54 +02:00
Wladimir J. van der Laan
e400258bf0
simplified qrcode icon that scales gracefully to 16x16
2012-05-05 11:27:38 +02:00
Wladimir J. van der Laan
460c51fdad
Add UI RPC console / debug window
2012-05-05 10:37:06 +02:00
Wladimir J. van der Laan
3793fa09ff
Allow Qt to wrap long tooltips ( fixes #1063 )
...
Implemented without having to touch any translation: by listening for QEvent::ToolTipChange events, then rewriting the tooltips to prefix `<qt/>` if it is not yet rich text.
2012-05-05 10:20:52 +02:00
Wladimir J. van der Laan
c8a3917089
signmessage: auto-select signature when field is focused/clicked
2012-05-05 09:56:55 +02:00
Wladimir J. van der Laan
4c9183e8bb
Merge pull request #1166 from Diapolo/signmessage_clear
...
add a clear all button to the sign message page (addresses #943 )
2012-05-05 00:43:27 -07:00
Wladimir J. van der Laan
6672400206
Merge pull request #1175 from Diapolo/translators
...
small translation-file handling / loading changes and re-work comments to be clearer
2012-05-05 00:11:37 -07:00
Wladimir J. van der Laan
1f6f261ace
Merge pull request #1187 from TheBlueMatt/win32_ie
...
Update to require IE 5.1 as it is required to build on mingw64.
2012-05-05 00:02:10 -07:00
Wladimir J. van der Laan
393a0edc51
Merge pull request #1194 from Diapolo/sendcoins_placeholdertext
...
move label placeholdertext from sendcoinsentry.cpp to ui-file
2012-05-05 00:01:35 -07:00
Wladimir J. van der Laan
3118d11d88
Merge pull request #1032 from Diapolo/fix#945
...
Remove HTML font crap from "Wallet" message (fix for #945 )
2012-05-04 23:58:46 -07:00
Philip Kaufmann
d0ccf0c755
move label placeholdertext from sendcoinsentry.cpp to ui-file
2012-05-04 18:19:06 +02:00
Gavin Andresen
397737b913
Bump version numbers for 0.6.1rc2
2012-05-04 10:22:26 -04:00
Pieter Wuille
19b6958cfd
Added -externalip and -discover
...
-externalip=<ip> can be used to explicitly set the public IP address
of your node. -discover=0 can be used to disable the automatic public
IP discovery system.
2012-05-04 16:12:23 +02:00
Pieter Wuille
39857190de
Support for multiple local addresses
2012-05-04 16:12:23 +02:00
Pieter Wuille
478b01d9a7
Add -seednode connections, and use this for -dnsseed + -proxydns
2012-05-04 16:11:54 +02:00
Pieter Wuille
9bab521df8
Support connecting by hostnames passed to proxy (-proxydns)
2012-05-04 16:11:54 +02:00
Pieter Wuille
a012e2db59
refactor ConnectSocket
2012-05-04 16:11:54 +02:00
Pieter Wuille
933f2715d8
SOCKS5 connect via hostname
2012-05-04 16:11:54 +02:00
Pieter Wuille
60a87bce87
SOCKS5 support by default
...
Add -socks=<n> to select SOCKS version to use. 4 and 5 are supported,
5 is default.
2012-05-04 16:11:54 +02:00
Philip Kaufmann
dab7acdf45
fix #952 by checking if we have a new address or an updated label
2012-05-04 11:09:55 +02:00
Peter Todd
86c47a5636
Fixed non-sensical error message
...
Previously trying to create a multisig address that required less than
one signature would output something like the following:
"wrong number of keys(got 1, need at least 0)"
2012-05-04 00:41:00 -04:00
Philip Kaufmann
e23a121afe
remove obsolete BackupWallet() entry in wallet.h
2012-05-03 11:30:52 +02:00
Philip Kaufmann
65c2ad687f
add a clear all button to the sign message page
2012-05-03 09:23:37 +02:00
Matt Corallo
234db30d66
Update to require IE 5.1 as it is required on mingw64.
...
We already require XP, this just fixes Mingw64 build.
2012-05-02 20:21:43 -04:00
Jeff Garzik
ca97bde8ff
Merge pull request #1171 from Diapolo/fix_compiler_warn
...
fix 2 compiler warnings
2012-05-01 15:02:41 -07:00
Jeff Garzik
024fa1cb44
EvalScript(): cast to avoid signed/unsigned warning
2012-05-01 17:57:12 -04:00
Jeff Garzik
061a001590
ThreadSocketHandler2(): cast to avoid signed/unsigned warning
2012-05-01 17:54:52 -04:00
Jeff Garzik
10ab9c2f42
OpenBlockFile(): cast to eliminate signed/unsigned comparison warning
...
nFile's null value is -1. Cast that to unsigned int, to avoid warning.
Additionally, avoid nFile==0 because the first valid value is 1.
2012-05-01 17:50:33 -04:00
Jeff Garzik
24de922636
CDiskTxPos, CInPoint, COutPoint: cast null value (-1) to unsigned int
...
to eliminate signed/unsigned comparison warnings
2012-05-01 17:49:17 -04:00
Jeff Garzik
e19ccfa657
Merge pull request #1177 from laanwj/2012_05_remove_duplicate_securestring
...
remove duplicate definition of SecureString in util.h
2012-05-01 10:05:00 -07:00
Wladimir J. van der Laan
6d25b0e99a
Merge pull request #1172 from Diapolo/serialize_h_rem_typedef
...
remove unused typedef in serialize.h
2012-05-01 09:52:38 -07:00
Wladimir J. van der Laan
3ee5f8aac3
remove duplicate definition of SecureString in util.h
...
SecureString was moved to allocators.h in commit 6cb6d62347
2012-05-01 18:49:50 +02:00
Philip Kaufmann
aab1f950aa
small translation-file handling / loading changes and re-work comments to be clearer
2012-05-01 17:54:07 +02:00
Philip Kaufmann
1c94f88d5e
fix compiler warning "suggest parentheses around assignment used as truth
...
value [-Wparentheses]" in util.cpp
2012-05-01 11:41:04 +02:00
Philip Kaufmann
f8e4d43be7
fix compiler warning "suggest explicit braces to avoid ambiguous "else"
...
[-Wparentheses]" in net.cpp
2012-05-01 11:40:08 +02:00
Philip Kaufmann
00d971e1e7
remove references to bitcoin-wx from comment in init.cpp
2012-05-01 01:59:54 +02:00
Philip Kaufmann
810b4fad7d
remove unused typedef in serialize.h
2012-05-01 01:56:47 +02:00
Gavin Andresen
be8651dde7
Check earlier for blocks with duplicate transactions. Fixes #1167
2012-04-30 11:08:07 -04:00
Wladimir J. van der Laan
ec4997d48f
Merge pull request #1139 from Diapolo/messagepage
...
change button tooltip on sign message page for copy to clipboard...
2012-04-29 04:35:27 -07:00
Wladimir J. van der Laan
6974aff668
Fix critical UI performance issue ( #1154 )
2012-04-29 13:25:05 +02:00
Gavin Andresen
0acbe31cfc
Update openssl version
2012-04-27 12:45:49 -04:00
Gavin Andresen
2c31cfc271
Bump version numbers for 0.6.1rc1
2012-04-27 10:14:33 -04:00
Gavin Andresen
dfead66eac
Merge pull request #1151 from freewil/listsinceblock-blockhash
...
listsinceblock: rpc param blockid -> blockhash
2012-04-26 15:37:12 -07:00
Gavin Andresen
27d4b53a5c
Merge pull request #1150 from gavinandresen/NOPCH
...
Remove unused -DNOPCH
2012-04-26 15:36:33 -07:00
Gavin Andresen
b2997dc043
Merge pull request #1152 from freewil/remove-strange-debug
...
remove strange debug message from listsinceblock
2012-04-26 15:36:15 -07:00
Pieter Wuille
287ce61dc2
Merge pull request #1146 from drizztbsd/posix-include
...
We should include netinet/in.h to use sockaddr_in (POSIX.1-2001)
2012-04-26 15:25:56 -07:00
freewil
42ce57687a
remove strange debug message from listsinceblock
2012-04-26 13:12:44 -04:00
freewil
fdb204abb1
listsinceblock: rpc param blockid -> blockhash
...
This is more consistent with the rest of the labeling seen
by the user when accessing the rpc commands.
2012-04-26 12:48:33 -04:00
Gavin Andresen
9e71a5cd23
Define TEST_DATA_DIR so unit tests can be run from any current working directory
2012-04-26 11:20:44 -04:00
Gavin Andresen
08e663d7e2
Undo part of c2e8c8ac
to fix issue#1148
2012-04-26 10:18:35 -04:00
Gavin Andresen
cfc45319fe
Remove unused -DNOPCH
2012-04-25 19:40:44 -04:00
Pieter Wuille
83743ed681
Make lsn_reset ("detach databases") optional and off by default.
...
Add an option -detachdb (and entry in OptionDialog), without which no
lsn_reset is called on addr.dat and blkindex.dat. That means these
files cannot be moved to a new environment, but shutdown can be
significantly faster. The wallet file is always lsn_reset'ed.
-detachdb corresponds to the old behaviour, though it is off by
default now to speed up shutdowns.
2012-04-26 00:31:54 +02:00
Timothy Redaelli
5e9dc15360
We should include netinet/in.h to use sockaddr_in (POSIX.1-2001)
2012-04-25 14:07:24 +02:00
Jeff Garzik
c2e8c8acd8
Merge pull request #1140 from jgarzik/sign-compare
...
Address many more sign comparison warnings
2012-04-23 21:33:29 -07:00
Jeff Garzik
735a60698c
Change signed->unsigned at 3 code sites
...
This resolves signed/unsigned comparison warnings.
2012-04-23 14:14:36 -04:00
Jeff Garzik
5aa0b23825
CBlock::WriteToDisk() properly checks ftell(3) for error return
...
Rather than storing ftell(3)'s return value -- a long -- in an
unsigned int, we store and check a properly typed temp. Then, assured a
non-negative value, we store in nBlockPosRet.
2012-04-23 14:14:36 -04:00
Jeff Garzik
1d8c7a9557
Add casts for unavoidable signed/unsigned comparisons
...
At these code sites, it is preferable to cast rather than change
a variable's type.
2012-04-23 14:14:36 -04:00
Jeff Garzik
c0a0a93d02
Test ScriptSigArgsExpected() for error, before accumulating return value
2012-04-23 14:14:36 -04:00
Jeff Garzik
7bd9c3a3cf
SigOp and orphan-tx constants and counts are always unsigned.
...
Fixes several sign-comparison warnings.
2012-04-23 14:14:03 -04:00
Jeff Garzik
faf705a42a
Prefer 'unsigned int' for loop index variables tested against ::size()
...
C++ STL ::size() generally returns unsigned, which implies that "int idx"
style of loop variable will generate a signed-vs-unsigned comparison warning
when testing the loop exit condition "idx < blah.size()"
Update areas of the bitcoin code where loop variables may be more properly and
correctly defined as unsigned.
2012-04-22 13:22:39 -04:00
Philip Kaufmann
a2d0fcbe38
change button tooltip on sign message page for copy to clipboard as it was missleading
2012-04-22 19:02:52 +02:00
Pieter Wuille
f4203de302
Make GetDataDir return absolute paths
2012-04-22 17:38:47 +02:00
Pieter Wuille
1d740055da
-loadblock to load from an external blk000?.dat file
2012-04-22 03:09:35 +02:00
Pieter Wuille
457661f640
Merge pull request #1124 from sipa/rpcobj3
...
extension of #1103 : encapsulate mapCommands in CRPCTable
2012-04-21 16:49:32 -07:00
Pieter Wuille
7dbe393629
Merge pull request #1131 from laanwj/2012_04_hexstr
...
Integrate @JoelKatz's optimized ToHex (#562 ) into current HexStr function
2012-04-21 16:47:02 -07:00
Pieter Wuille
d5eb41fa08
Merge pull request #1129 from laanwj/2012_04_opcodes
...
Add explicit numeric constant value for all opcodes
2012-04-21 16:43:31 -07:00
Gavin Andresen
8449a8788a
Data-drive script evaluation unit tests.
2012-04-21 19:35:39 -04:00
Pieter Wuille
6a7a42be16
Merge pull request #1126 from drizztbsd/master
...
Fix build with gcc 4.7
2012-04-21 15:13:29 -07:00
Wladimir J. van der Laan
88dc2d6c6a
Integrate @JoelKatz's optimized ToHex ( #562 ) into current HexStr function
2012-04-21 20:37:50 +02:00
Wladimir J. van der Laan
b6c837cbe1
Remove no-longer used UI hints in bitcoin core
...
The Qt UI has its own associated structures for temporary transaction state / cache.
2012-04-21 18:21:19 +02:00
Wladimir J. van der Laan
cdcc319c2d
change type of various bare chars to bool that are only used as bool (and never serialized)
2012-04-21 18:16:11 +02:00
Wladimir J. van der Laan
7be8b2ff9c
Add explicit numeric constant value for all opcodes
...
- Easier for debugging (what opcode was 0x... again?)
- Clarifies that the opcodes are set in stone in the protocol, and signals that it is impossible to insert opcodes in between.
2012-04-21 10:34:18 +02:00
Pieter Wuille
e46704dd90
Expose CRPCTable via bitcoinrpc.h for testing
2012-04-21 01:37:34 +02:00
Pieter Wuille
9862229d4d
Encapsulate mapCommands in class CRPCTable
2012-04-21 01:20:05 +02:00
Jeff Garzik
dc42bf52c1
Encapsulate RPC command dispatch in an array of CRPCCommand's
2012-04-21 01:20:05 +02:00
Wladimir J. van der Laan
00b9c0f4b2
Merge pull request #1122 from dlitz/unsigned-char-fix
...
Unsigned char fix & fix undefined phexdigits[255]
2012-04-20 10:18:45 -07:00
Timothy Redaelli
9553c35d89
Add missing includes. (Fix bulding under GCC 4.7)
2012-04-20 12:50:57 +02:00
Pieter Wuille
c73ba23eb5
gettransaction RPC for non-wallet transactions
...
Works for wallet transactions, memory-pool transaction and block chain
transactions.
Available for all:
* txid
* version
* locktime
* size
* coinbase/inputs/outputs
* confirmations
Available only for wallet transactions:
* amount
* fee
* details
* blockindex
Available for wallet transactions and block chain transactions:
* blockhash
* time
2012-04-18 23:42:07 +02:00
R E Broadley
871c3557bf
Added ability to respond to signals during Block Loading stage.
2012-04-18 12:30:24 +01:00
Dwayne C. Litzenberger
8c8e8c2e93
Fix bugs on 'unsigned char' platforms.
...
In ISO C++, the signedness of 'char' is undefined. On some platforms (e.g.
ARM), 'char' is an unsigned type, but some of the code relies on 'char' being
signed (as it is on x86). This is indicated by compiler warnings like this:
bignum.h: In constructor 'CBigNum::CBigNum(char)':
bignum.h:81:59: warning: comparison is always true due to limited range of data type [-Wtype-limits]
util.cpp: In function 'bool IsHex(const string&)':
util.cpp:427:28: warning: comparison is always false due to limited range of data type [-Wtype-limits]
In particular, IsHex erroneously returned true regardless of the input
characters, as long as the length of the string was a positive multiple of 2.
Note: For testing, it's possible using GCC to force char to be unsigned by
adding the -funsigned-char parameter to xCXXFLAGS.
2012-04-18 00:33:32 -04:00
Dwayne C. Litzenberger
a6fa147c8d
Fix phexdigits[255] is undefined.
2012-04-18 00:33:32 -04:00
Pieter Wuille
559fc3c610
Add missing breaks in optionmodel's switch case
2012-04-17 23:27:59 +02:00
Pieter Wuille
031eae7864
Merge pull request #1114 from sipa/lesssync
...
Reduce sync frequency for blkindex.dat
2012-04-17 14:23:31 -07:00
Pieter Wuille
0a83c0fcef
Fix tests after recent refactors
2012-04-17 20:37:47 +02:00
Pieter Wuille
c23617fef3
Merge remote-tracking branch 'jgarzik/mempool'
2012-04-17 20:12:48 +02:00
Pieter Wuille
caeddc5d37
Merge pull request #1117 from sipa/deadlockfix
...
Fix potential deadlock
2012-04-17 11:05:02 -07:00
Pieter Wuille
6b6aaa1698
Further reduce header dependencies
...
This commit removes the dependency of serialize.h on PROTOCOL_VERSION,
and makes this parameter required instead of implicit. This is much saner,
as it makes the places where changing a version number can have an
influence obvious.
2012-04-17 20:03:42 +02:00
Jeff Garzik
ccd65d4261
Move proto version to version.h. Reduce header deps a bit more.
2012-04-17 20:02:38 +02:00
Jeff Garzik
9eace6b113
Move CWalletDB code to new walletdb module.
...
In addition to standard code separation, this change opens the door
to fixing several include inter-dependencies.
2012-04-17 20:00:55 +02:00
Pieter Wuille
ed6d0b5f85
Remove headers.h
2012-04-17 20:00:55 +02:00
Gavin Andresen
b97d54355e
Merge pull request #1106 from jgarzik/sign-compare
...
Fix many sign-comparison warnings found in bitcoin codebase
2012-04-17 10:55:56 -07:00
Gavin Andresen
e873dc654c
Merge pull request #1115 from laanwj/2012_04_cleanupmisc
...
Delete unused, unreachable and commented code, add missing initializer
2012-04-17 10:12:33 -07:00
Pieter Wuille
c581cc16bb
Fix potential deadlock
...
Conflict:
* cs_main in ProcessMessages() (before calling ProcessMessages)
* cs_vSend in CNode::BeginMessage
versus:
* cs_vSend in ThreadMessageHandler2 (before calling SendMessages)
* cs_main in SendMessages
Even though cs_vSend is a try_lock, if it succeeds simultaneously with
the locking of cs_main in ProcessMessages(), it could cause a deadlock.
2012-04-17 18:50:52 +02:00
Jeff Garzik
ce8c93498a
main.cpp: replace tabs with spaces
...
Sometimes they sneak in through the 'vi' door
2012-04-17 12:31:51 -04:00
Jeff Garzik
8bff8ac079
AlreadyHave(): only hold lock during mapTransactions access
2012-04-17 12:30:00 -04:00
Wladimir J. van der Laan
7fa3ad83a9
Remove unused and unreachable code
2012-04-17 18:28:02 +02:00
Wladimir J. van der Laan
4941aad657
Add forgotten initializer
2012-04-17 18:27:55 +02:00
Pieter Wuille
8f2b50f178
Reduce sync frequency for blkindex.dat
...
Since auto-remove-db-logs was enabled, each time a CTxDB was closed
outside of the initial download window, it causes a checkpoint + log
cleanup. This is overkill, so reduce the sync frequency to once per
minute at most.
2012-04-17 18:27:18 +02:00
Jeff Garzik
dd21ce5f1b
Merge pull request #1094 from jgarzik/already-have-locking
...
Locking fix for AlreadyHave()
2012-04-17 09:23:49 -07:00
Jeff Garzik
ea9627979e
Bump PROTOCOL_VERSION to 60001, thereby enabling BIP31
2012-04-17 12:16:46 -04:00
Jeff Garzik
865a0c1674
Merge pull request #1081 from jgarzik/pong
...
BIP 0031: pong message
2012-04-17 08:51:17 -07:00
Wladimir J. van der Laan
7a5452ffb3
Merge pull request #1092 from laanwj/2012_04_sendcoins_setlabelfix
...
When sending coins, set label when selecting address that already has a label
2012-04-16 05:41:39 -07:00
Wladimir J. van der Laan
088a13331b
Merge pull request #1091 from Diapolo/GUI-BlockDL
...
revert to default OS theme for progressbar (fix #1071 )
2012-04-16 00:55:37 -07:00
Jeff Garzik
9fb89c26f3
Fix misc. minor sign-comparison warnings
2012-04-15 17:00:20 -04:00
Jeff Garzik
0dd710acb6
CNode's nHeaderStart may be negative, so change its type
2012-04-15 16:59:48 -04:00
Jeff Garzik
c3fad8350b
serialize.h: CAutoFile's read and write may take size_t nSize
2012-04-15 16:59:09 -04:00
Jeff Garzik
3a78f82a78
Fix sign-compare warnings: netbase's Lookup* max-solutions may be unsigned
2012-04-15 16:58:32 -04:00
Jeff Garzik
c376ac359e
Fix loop index var types, fixing many minor sign comparison warnings
...
foo.size() typically returns an unsigned integral type; make loop variables
match those types' signedness.
2012-04-15 16:52:09 -04:00
Jeff Garzik
ab9dc75a18
The string class returns string::npos, when find() fails.
...
Noticed when sign-comparison warnings were enabled.
2012-04-15 16:47:24 -04:00
Jeff Garzik
ca4c4c53a8
CTxMemPool: add helper methods, to reduce global mempool.mapTx accesses
2012-04-15 14:43:19 -04:00
Jeff Garzik
d01903e751
CTxMemPool: encapsulate AcceptToMemoryPool
2012-04-15 14:43:19 -04:00
Jeff Garzik
8e45ed66dd
CTxMemPool: encapsulate AddToMemoryPoolUnchecked(), RemoveFromMemoryPool(),
...
and nPooledTx
2012-04-15 14:42:52 -04:00
Jeff Garzik
235507ae48
New class CTxMemPool, encapsulating TX memory pool data members
2012-04-15 14:41:27 -04:00
Jeff Garzik
5a701eb7ea
Merge pull request #1104 from laanwj/2012_04_clang
...
Enable and fix most compilation warnings
2012-04-15 11:39:15 -07:00
Jeff Garzik
fced2231f8
Merge pull request #1084 from dooglus/validate_secret
...
importprivkey doesn't check that it is given a private key
2012-04-15 09:25:29 -07:00
Wladimir J. van der Laan
9ea8e60a0c
Merge pull request #1097 from laanwj/2012_04_runawayexception
...
Show a message box when runaway exception happens
2012-04-15 09:22:26 -07:00
Wladimir J. van der Laan
da7bbd9dfd
fix warnings: suggest explicit braces to avoid ambiguous 'else' [-Wparentheses]
2012-04-15 13:40:14 +02:00
Wladimir J. van der Laan
6642ffb761
fix warnings: '&&' within '||' [-Wlogical-op-parentheses]
2012-04-15 13:40:14 +02:00
Wladimir J. van der Laan
2e120f28e0
fix warnings: delete called on 'XX' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
2012-04-15 13:40:14 +02:00
Wladimir J. van der Laan
11cd416525
fix warnings: unused variable 'XX' [-Wunused-variable]
2012-04-15 13:40:14 +02:00
Wladimir J. van der Laan
76d8170ce8
fix warnings: enumeration values 'XX' not handled in switch [-Wswitch-enum]
2012-04-15 13:40:14 +02:00
Wladimir J. van der Laan
87207a2e08
fix warnings: 'XX' defined as a struct here but previously declared as a class [-Wmismatched-tags]
2012-04-15 13:40:14 +02:00
Wladimir J. van der Laan
8add7822ce
fix warnings: array subscript is of type 'char' [-Wchar-subscripts]
2012-04-15 13:40:14 +02:00
Wladimir J. van der Laan
1f29d399f4
work around issue in boost::program_options that prevents from compiling in clang
2012-04-15 13:40:14 +02:00
Wladimir J. van der Laan
f9f625fb32
enable all warnings except invalid-offsetof, sign-compare, unused-parameter
2012-04-15 13:40:14 +02:00
Luke Dashjr
2eb665c634
Bugfix: Check that QRcode_encodeString didn't return NULL (error)
...
Without this, any error will segfault Bitcoin-Qt
2012-04-14 21:00:27 -04:00
Wladimir J. van der Laan
a7a0c7a1bf
Show a message box when runaway exception happens
...
This is more clear to users than when the program simply disappears (usually during initialization). It still logs the message to the console and debug log as well.
2012-04-14 18:35:42 +02:00
Jeff Garzik
22014c31e5
Merge pull request #1093 from jgarzik/tx-opt
...
Database micro-optimization for "tx" network message
2012-04-14 08:50:43 -07:00
Wladimir J. van der Laan
46ba858817
Merge pull request #1089 from laanwj/2012_04_translationupdate
...
Update translations for bitcoin core
2012-04-13 23:47:50 -07:00
Wladimir J. van der Laan
3fddc8effc
Update translations for bitcoin core
...
- Move scripts/qt to share/qt, to clean up toplevel directories
- Update english ts file which is used to source messages for Transifex
- In extract_strings_qt.py use a glob *.h *.cpp, this is safe now that the Wx UI files are removed
2012-04-14 08:46:16 +02:00
Wladimir J. van der Laan
b970067298
Do not show green tick unless all known blocks are downloaded ( fixes #921 )
2012-04-14 08:21:22 +02:00
Jeff Garzik
8deb9822e4
Locking fix for AlreadyHave()
...
Access to mapTransactions[] must be guarded by cs_mapTransactions lock.
Also, reformat long lines to make the switch statement more readable.
2012-04-13 18:24:55 -04:00
Jeff Garzik
9925d34a49
Database micro-optimization for "tx" network message
...
Open database once per "tx" message, rather than multiple times,
in the case of orphan transaction presence.
As a side effect, a now-unused CTransaction::AcceptToMemoryPool()
variant is removed.
2012-04-13 17:48:15 -04:00
Wladimir J. van der Laan
2d67195ed2
Set label when selecting an address that already has a label. Fixes #1080 .
2012-04-13 21:08:46 +02:00
Philip Kaufmann
e72c6a1830
revert to default OS theme for progressbar / fix small glitches in bitcoingui.cpp
2012-04-13 18:25:56 +02:00
Wladimir J. van der Laan
6b8e7eefcc
Add missing tooltip and key shortcut in settings dialog ( #1088 without line break part)
2012-04-13 09:16:46 +02:00
Gavin Andresen
c3c203ccd9
Merge pull request #1087 from sipa/fix_1086
...
Fix #1086 : add /testnet to passed datadir
2012-04-12 18:22:15 -07:00
Pieter Wuille
7a743148c9
Fix #1086 : add /testnet to passed datadir
2012-04-13 03:11:14 +02:00
Jeff Garzik
8b09cd3a4d
Replace several network protocol version numbers with named constants
...
stored in version.h.
Also, a minor CAddress code reformat while we're in there, fixing
some incorrect indentation.
2012-04-12 20:07:49 -04:00
Chris Moore
b3a6e613fc
CBitcoinSecret::SetString() now calls IsValid() to make sure it was passed something with the correct version.
2012-04-12 13:13:08 -07:00
Gavin Andresen
b7dc02381f
Merge pull request #1041 from gavinandresen/listtransactionsfix
...
Bug fix listtransactions from/count handling.
2012-04-12 12:20:51 -07:00
Wladimir J. van der Laan
181400c3d5
make text in about box selectable ( fixes #1055 )
2012-04-12 20:55:38 +02:00
Philip Kaufmann
7261945eb5
enable wordWrap on lblQRCode / small code comment change
2012-04-12 20:34:06 +02:00
Philip Kaufmann
b1a99c3a1f
limit length of generated URI to 255 chars to prevent a DoS against the QR-Code dialog
2012-04-12 20:34:06 +02:00
Philip Kaufmann
1e8c62b29c
updated to reflect pull-request suggestions / renamed some GUI elements
2012-04-12 20:34:05 +02:00
Philip Kaufmann
9e0dba8c17
fixed amount part of URI in QR-Codes / removed (no label) string if we have NO label / coding style updates / removed an unused variable
2012-04-12 20:34:04 +02:00
Jeff Garzik
460b66b14b
Remove obsolete Win32 AffinityBugWorkaround()
...
Reference miner exists for testnet-in-a-box type situations, and as a
reference. We don't care enough about highly optimized internal
mining to keep workarounds like this.
2012-04-12 13:24:00 -04:00
Jeff Garzik
b87c0fc440
version.h: separate client, net sections. Move more constants to this file.
...
* move PROTOCOL_VERSION to version.h
* move CLIENT_VERSION* to version.h, make available past cpp stage
* clearly separate client, network version portions of version.h
2012-04-12 12:23:58 -04:00
Jeff Garzik
93e447b631
BIP 0031: pong message
...
Add a pong message that is sent in reply to a ping. It echoes back a nonce
field that is now added to the ping message. Send a nonce of zero in ping
messages.
Original author: Mike Hearn @ Google
Modified Mike's change to introduce a mild form of protocol documentation in
version.h.
2012-04-12 12:11:56 -04:00
Gavin Andresen
940e22fd81
Fix OSX build errors.
2012-04-12 11:14:46 -04:00
Wladimir J. van der Laan
4ac24cf59e
Merge pull request #855 from sje397/ToggleHide
...
Toggle UI hide
2012-04-11 23:02:18 -07:00
Pieter Wuille
ee12c3d60c
Use filesystem::path instead of manual string tinkering
...
Where possible, use boost::filesystem::path instead of std::string or
char* for filenames. This avoids a lot of manual string tinkering, in
favor of path::operator/.
GetDataDir is also reworked significantly, it now only keeps two cached
directory names (the network-specific data dir, and the root data dir),
which are decided through a parameter instead of pre-initialized global
variables.
Finally, remove the "upgrade from 0.1.5" case where a debug.log in the
current directory has to be removed.
2012-04-11 22:30:23 +02:00
Wladimir J. van der Laan
bcaa5f1c04
Merge pull request #1083 from laanwj/2012_04_connectionicon
...
Make 4th bar of connection icon green
2012-04-11 11:06:26 -07:00
Gavin Andresen
2232717cba
Remove path.make_preferred() calls, and fix compiler error in bitcoinrpc RE: boost::system
2012-04-11 14:00:48 -04:00
Wladimir J. van der Laan
5ca4f13b87
by popular request, make 4th bar of connection icon green
2012-04-11 19:59:15 +02:00
Pieter Wuille
4577167170
Fix build.h dependencies
...
For Qt builds, the build.h file is moved to build/build.h. For regular
builds, it is moved to obj/build.h. This allows the Qt build to be done
in a different directory than the source, and without interfering with
other builds.
2012-04-11 14:04:42 +02:00
Pieter Wuille
702764f53b
Merge pull request #1054 from sipa/buildinfo
...
Build identification strings
2012-04-10 13:31:12 -07:00
Wladimir J. van der Laan
b56772e5df
Merge pull request #1046 from laanwj/2012_04_rpcporterror
...
Show error message instead of exception crash when unable to bind RPC port
2012-04-10 13:14:47 -07:00
Pieter Wuille
a20c0d0f67
Build identification strings
...
All client version information is moved to version.cpp, which optionally
(-DHAVE_BUILD_INFO) includes build.h. build.h is automatically generated
on supporting platforms via contrib/genbuild.sh, using git describe.
The git export-subst attribute is used to put the commit id statically
in version.cpp inside generated archives, and this value is used if no
build.h is present.
The gitian descriptors are modified to use git archive instead of a
copy, to create the src/ directory in the output. This way,
src/src/version.cpp will contain the static commit id. To prevent
gitian builds from getting the "-dirty" marker in their git-describe
generated identifiers, no touching of files or running sed on the
makefile is performed anymore. This does not seem to influence
determinism.
2012-04-10 18:16:53 +02:00
sje397
86d5634941
Toggle main window hide on tray icon click
...
- converted openBictoinAction to toggleHideAction
- put GUIUtil functions into a namespace instead of a class
- put window-related functions together in optionsdialog
Reasoning:
- toggle is more typical behaviour
- it's more functional
- better UX
The typical issue with toggling visibility is that when a window
is obscured by other windows but in the 'shown' state, hiding it
isn't what you want. I've added an 'isObscured' function to GUIUtil
that checks several pixels in the window to see if they are visible
on the desktop so that an obscured but shown window can be raised.
Conflicts:
src/qt/guiutil.cpp
src/qt/guiutil.h
2012-04-11 00:07:32 +10:00
Pieter Wuille
1a275bac2b
Merge pull request #1052 from sipa/scopedlocks
...
Use scoped locks instead of CRITICAL_BLOCK
2012-04-09 13:25:17 -07:00
Gavin Andresen
1044391135
Merge branch 'filesystem' of https://github.com/Diapolo/bitcoin
2012-04-09 10:41:59 -04:00
Pieter Wuille
f342dac1cb
Do not report spurious deadlocks caused by TRY_LOCK
2012-04-09 01:59:57 +02:00
Pieter Wuille
908037fe16
Support for parametrized locks in deadlock detector
2012-04-09 01:59:57 +02:00
Pieter Wuille
f8dcd5ca6f
Use scoped locks instead of CRITICAL_BLOCK
2012-04-09 01:59:46 +02:00
Luke Dashjr
fa2544e79f
Bugfix: Replace "URL" with "URI" where we aren't actually working with URLs
2012-04-06 12:53:37 -04:00
Wladimir J. van der Laan
3e34352222
Show error message instead of exception crash when unable to bind RPC port
...
Fixes issue #875
2012-04-06 18:41:23 +02:00
Philip Kaufmann
42c63d3ad2
fixed small error in bitcoinrpc.cpp
2012-04-06 15:31:28 +02:00
Philip Kaufmann
36949554ab
updated util.cpp to use make_preferred()
2012-04-06 15:29:20 +02:00
Philip Kaufmann
93fb7489a7
updated bitcoinrpc.cpp to use make_preferred() and removed double inclusion of boost/filesystem.hpp
2012-04-06 15:29:19 +02:00
Philip Kaufmann
9c24588e73
updated db.cpp to use make_preferred()
2012-04-06 15:29:18 +02:00
Pieter Wuille
9362da78b0
Merge pull request #1033 from sipa/wait
...
Condition variables instead of polling
2012-04-06 04:11:14 -07:00
graingert
f9781fc62e
Change sign message bitcoin address tooltip to "The address to sign the message with" Closes #1050
2012-04-06 04:08:16 +02:00
Pieter Wuille
e88ed65a39
Flush on log size instead of transaction count
2012-04-05 20:29:47 +02:00
Gavin Andresen
399ff1fe05
Merge pull request #1043 from Diapolo/misc
...
removed obsolete boost workaround (boost ticket #4258 )
2012-04-05 07:36:23 -07:00
Gavin Andresen
895c12943b
Merge pull request #1042 from gavinandresen/use_ssl_cleanup
...
Remove USE_SSL #define
2012-04-05 07:34:45 -07:00
Gavin Andresen
ea2cc8fc4a
Merge pull request #1037 from gavinandresen/addmultisigenable
...
Enable addmultisigaddress RPC call for main network
2012-04-05 07:34:19 -07:00
Gavin Andresen
c7fa55bb87
Merge pull request #1036 from gavinandresen/pubsubcleanup
...
Remove half-implemented publish/subscribe system
2012-04-05 07:33:54 -07:00
Gavin Andresen
78494ffecc
Merge pull request #1035 from gavinandresen/osxbuild
...
Add ifdef RELEASE to makefile.osx as the compile-for-older-macs flags
2012-04-05 07:33:00 -07:00
Gregory Maxwell
4a8d0f3b10
Merge pull request #1039 from sipa/fix_955
...
Fix #955 : Verify status of encrypt/decrypt calls to detect failed padding
2012-04-05 06:17:05 -07:00
Philip Kaufmann
7f10522c43
removed obsolete boost workaround (boost ticket #4258 )
2012-04-05 08:34:31 +02:00
Gavin Andresen
5ce4c2a23a
Remove USE_SSL #define
2012-04-04 21:19:27 -04:00
Gavin Andresen
723cafcbcf
Bug fix listtransactions from/count handling.
2012-04-04 20:56:13 -04:00
Pieter Wuille
e5c027b49b
Verify status of encrypt/decrypt calls to detect failed padding
2012-04-05 02:07:53 +02:00
Philip Kaufmann
fc42e9fae2
removed an unused / obsolete tag from bitcoin.qrc
2012-04-05 00:11:22 +02:00
Gavin Andresen
ea8c55cfd7
Enable addmultisigaddress RPC call for main network
2012-04-04 16:01:27 -04:00
Gavin Andresen
f487746ded
Remove half-implemented publish/subscribe system
2012-04-04 15:56:00 -04:00
Gavin Andresen
3a8ca61bd0
Add ifdef RELEASE to makefile.osx as the compile-for-older-macs flags
2012-04-04 15:45:31 -04:00
Pieter Wuille
092631f0ba
Condition variable for outbound connection slots
...
Keep a global counter for nOutbound, protected with its own waitable
critical section, and wait when all outbound slots are filled, rather
than polling.
This removes the (on average) 1 second delay between a lost connection
and a new connection attempt, and may speed up shutdowns.
2012-04-04 17:24:13 +02:00
Pieter Wuille
712fd182b7
Locking system overhaul, add condition variables
...
This commit simplifies the locking system: CCriticalSection becomes a
simple typedef for boost::interprocess::interprocess_recursive_mutex,
and CCriticalBlock and CTryCriticalBlock are replaced by a templated
CMutexLock, which wraps boost::interprocess::scoped_lock.
By making the lock type a template parameter, some critical sections
can now be changed to non-recursive locks, which support waiting via
condition variables. These are implemented in CWaitableCriticalSection
and WAITABLE_CRITICAL_BLOCK.
CWaitableCriticalSection is a wrapper for a different Boost mutex,
which supports waiting/notification via condition variables. This
should enable us to remove much of the used polling code. Important
is that this mutex is not recursive, so functions that perform the
locking must not call eachother.
Because boost::interprocess::scoped_lock does not support assigning
and copying, I had to revert to the older CRITICAL_BLOCK macros that
use a nested for loop instead of a simple if.
2012-04-04 16:21:08 +02:00
Pieter Wuille
b0a7e05a45
Merge pull request #1019 from laanwj/2012_03_uirefactor
...
Streamline UI ↔ Core interface
2012-04-04 05:03:07 -07:00
Wladimir J. van der Laan
cadae3588c
Merge pull request #1025 from Diapolo/GUI-BlockDL
...
modified block DL progressbar to be more informative and precise
2012-04-04 04:36:09 -07:00
Wladimir J. van der Laan
5cccb13dad
Move from noui.h / ui.h to one ui_interface.h with dummy implementation for the daemon.
2012-04-04 13:19:30 +02:00
Wladimir J. van der Laan
5a60b66a9d
Use a messagebox to display the error when -server is provided without providing a rpc password
2012-04-04 09:37:26 +02:00
Wladimir J. van der Laan
7cfbe1fee4
qtui.h/noui.h interface cleanup
...
- rename wxMessageBox, remove redundant arguments to noui/qtui calls
- also, add flag to force blocking, modal dialog box for disk space warning etc
- clarify function naming
- no more special MessageBox needed from AppInit2, as window object is created before calling AppInit2
2012-04-04 09:37:25 +02:00
Wladimir J. van der Laan
1a3f0da922
support RPC stop and encryptwallet with UI
2012-04-04 09:35:01 +02:00
Wladimir J. van der Laan
5d7cebdadc
move translation function _ to qtui.h/noui.h instead of util.h
2012-04-04 09:35:01 +02:00
Wladimir J. van der Laan
6cb6d62347
remove dependency on serialize.h and util.h for SecureString
2012-04-04 09:35:01 +02:00
Wladimir J. van der Laan
f0b5e9e116
remove unused CalledSetStatusBar and UIThreadCall notifications
2012-04-04 09:35:01 +02:00
Wladimir J. van der Laan
98e6175874
Update UI through async calls MainFrameRepaint and AddressBookRepaint instead of a timer.
...
- Overall, this is better design
- This fixes problems with the address book UI not updating when the address book is changed through RPC
- Move Statusbar change detection responsibility to ClientModel
2012-04-04 09:35:01 +02:00
Philip Kaufmann
75b6323200
remove HTML code around "Wallet" (displayed on overview page) and use Qt tags for font settings
2012-04-04 09:07:55 +02:00
Wladimir J. van der Laan
7e7bcce2d9
Code deduplication: make function in GUIUtil to get connection type to call object slot in GUI thread
...
with invokeMethod.
2012-04-04 08:46:12 +02:00
Wladimir J. van der Laan
55f69a4700
move QT_PLUGINS stuff to qt main file, where it belongs
2012-04-04 08:46:12 +02:00
Wladimir J. van der Laan
52d3a48128
VC2010 compile fixes
2012-04-03 20:22:41 +02:00
Philip Kaufmann
853a4a81b3
clarified comment why we use an own progressbar style / included "~" in the tr() call
2012-04-03 09:42:34 +02:00
Philip Kaufmann
ec9a4904f3
changed percentage done in tooltip to float to be more precise / allowed plurals in translation for "x block(s) remaining"
2012-04-03 08:30:13 +02:00
Gregory Maxwell
3263a245bb
Merge pull request #1026 from laanwj/2012_04_increase_up_to_date_time
...
Increase time ago of last block for "up to date" status from 30 to 90 minutes
2012-04-02 20:35:44 -07:00
Philip Kaufmann
a7a69cd07a
polished code and fixed progress display (was very jerky at the end of a sync)
2012-04-02 23:51:40 +02:00
Philip Kaufmann
e9de46c436
color update for progress bar
2012-04-02 23:48:24 +02:00
Philip Kaufmann
c7c0c93172
implemented OS independent progress bar style / moved one-time functions used on the bar to a better code location
2012-04-02 23:48:23 +02:00
Philip Kaufmann
5519660a0d
changed progressbar text to "~n blocks remaining"
2012-04-02 23:48:22 +02:00
Philip Kaufmann
068ed1e838
removed relative progressbar display and moved re-worked network detection code to setNumBlocks()
2012-04-02 23:48:22 +02:00
Philip Kaufmann
9ceae8acea
modified block DL progressbar to be dynamic and more precise
2012-04-02 23:48:21 +02:00
Wladimir J. van der Laan
2675fe6218
Increase time ago of last block for "up to date" status from 30 to 90 minutes
...
It was too hyperactive.
gmaxwell: I mean that right now when the block gap goes over an hour it starts showing synchronizing. Increasing that to 90 minutes or so would make it only happen about 6.4 times per year
2012-04-02 20:37:55 +02:00
Gavin Andresen
85ea8b4f43
Merge pull request #951 from TheBlueMatt/headerslimit
...
Limit getheaders to a hard 2000.
2012-04-02 11:22:11 -07:00
Pieter Wuille
91c5132ab5
Merge pull request #998 from Diapolo/transactiontable
...
removed an ugly line break in a transaction tooltip
2012-04-02 07:19:22 -07:00
Pieter Wuille
d3f220b2c2
Merge pull request #1022 from Diapolo/fix#1020
...
fix for #1020
2012-04-02 07:08:14 -07:00
Pieter Wuille
fdef04e77b
Merge pull request #995 from Diapolo/master
...
fixed typo in comment in netbase.h and bignum.h
2012-04-02 07:07:48 -07:00
Pieter Wuille
542a1380aa
Merge pull request #1006 from Diapolo/tr-tray
...
made tray icon tooltip translatable
2012-04-02 07:07:21 -07:00
Gavin Andresen
f3da2a88c9
Bump version to 0.6.0.99 for 0.6.1 merge window
2012-04-02 10:03:26 -04:00
Philip Kaufmann
b5271c8861
hide Delete button (only) on ReceivingTab / hide Sign message button (only) on SendingTab
2012-04-01 13:22:34 +02:00
Philip Kaufmann
7e05b97229
fixed typo in comment in netbase.h and bignum.h
2012-03-30 07:44:35 +02:00
Gavin Andresen
a1c3d8f14d
Merge branch 'master' of github.com:bitcoin/bitcoin
2012-03-29 15:11:04 -04:00
Gavin Andresen
f146061d24
Merge pull request #1010 from sipa/fastblocks2
...
Use transactions-updated as flush condition
2012-03-29 12:10:30 -07:00
Pieter Wuille
25c5eca893
Use transactions-updated as flush condition
...
The normal checkpointing during the block chain download is reduced
to every five minutes only, but forced every 200000 updated transactions.
2012-03-29 21:00:31 +02:00
Gavin Andresen
f3f9da868e
Bump version to 0.6.0rc6
2012-03-29 13:58:22 -04:00
Gavin Andresen
6293a9f87f
Workaround hangs when upgrading old addr.dat files
2012-03-29 13:34:07 -04:00
Gavin Andresen
83e914c1d5
Merge pull request #1007 from gavinandresen/log_auto_remove
...
Auto-remove logs, and decrease logfile size to 10M
2012-03-29 10:13:42 -07:00
Gavin Andresen
9f18347034
Auto-remove logs, and decrease logfile size to 10M
2012-03-29 09:03:11 -04:00
Philip Kaufmann
3d1d5fafc1
made tray icon tooltip translatable
2012-03-29 07:59:15 +02:00
Philip Kaufmann
0b637e0b86
removed an ugly line break in a transaction tooltip for case TransactionStatus::Mature
2012-03-27 23:20:09 +02:00
Philip Kaufmann
7b2eecd428
update translations from transifex
2012-03-27 10:13:38 +02:00
Gavin Andresen
8d29329f93
Update version to 60005 (0.6.0rc5)
2012-03-26 15:42:06 -04:00
Gavin Andresen
c698633447
Merge branch 'master' of github.com:bitcoin/bitcoin
2012-03-26 15:31:32 -04:00
Gavin Andresen
c289d95d6b
Merge pull request #991 from gavinandresen/disableWinURI
...
Disable bitcoin: URI handling on Windows for the 0.6 release
2012-03-26 12:31:06 -07:00
Wladimir J. van der Laan
57de7cd603
Merge pull request #990 from sipa/doc
...
Begin doxygen-compatible comments
2012-03-26 12:27:49 -07:00
Gavin Andresen
bf5b80a8ae
Merge branch 'deladdr' of https://github.com/sipa/bitcoin
2012-03-26 14:32:26 -04:00
Pieter Wuille
53cb1a49e7
Use erase instead of rewrite to remove old addr entries
2012-03-26 20:22:38 +02:00
Gavin Andresen
7b90edb5a6
Disable bitcoin: URI handling on Windows for the 0.6 release
2012-03-26 12:18:24 -04:00
Pieter Wuille
6b8de05d0a
Begin doxygen-compatible comments
2012-03-26 16:48:23 +02:00
Philip Kaufmann
4004b9a40b
make sure Window is shown when clicking bitcoin: Links to get user attention
2012-03-26 09:19:49 +02:00
Pieter Wuille
01a196e08d
Merge pull request #974 from sipa/walletupgrade
...
Introduce explicit -walletupgrade option
2012-03-25 19:44:52 -07:00
Pieter Wuille
59e659fcc0
Merge pull request #983 from laanwj/2012_03_removeunusedutil
...
Remove unused functions from util.h/util.cpp (EOM)
2012-03-25 19:31:03 -07:00
Pieter Wuille
bf1afb02ca
Give DNS seeds a random age between 3 and 7 days old
...
This speeds up initial connections with an old/large addr.dat a lot.
2012-03-25 16:06:16 +02:00
Wladimir J. van der Laan
a6aee96c7e
remove unused functions from util.h/util.cpp
2012-03-25 12:33:30 +02:00
Pieter Wuille
439e1497e1
Introduce explicit -walletupgrade option
...
Do not automatically change the wallet format unless the user takes an
explicit action that implies an upgrade (encrypting, for now), or uses
-walletupgrade.
-walletupgrade optionally takes an integer argument: the client version
up to which upgrading is allowed. Without an argument, it is upgraded
to latest supported version. If an argument to -walletupgrade is
provided at the time the wallet is created, the new wallet will initially
not use features beyond that version.
Third, the current wallet version number is reported in getinfo.
2012-03-22 23:47:29 +01:00
Gavin Andresen
958fe01c32
Merge branch 'checklevel' of https://github.com/sipa/bitcoin
2012-03-22 12:18:56 -04:00
Gavin Andresen
e12d131734
Merge pull request #975 from sipa/versioncheck
...
Check minversion before loading the rest of the wallet
2012-03-22 09:18:11 -07:00
Gavin Andresen
a6b4a11385
Merge branch 'addrman' of https://github.com/sipa/bitcoin
2012-03-22 09:19:01 -04:00
Gavin Andresen
0e894be626
Merge pull request #964 from sipa/fastblocks
...
Speed up block downloading
2012-03-22 06:17:44 -07:00
Gavin Andresen
e53f03172a
Merge branch 'master' of github.com:bitcoin/bitcoin
2012-03-22 08:51:37 -04:00
Wladimir J. van der Laan
5cd806a03e
Merge pull request #969 from laanwj/2012_03_printconsole_error
...
replace call to PrintConsole with call to error()
2012-03-21 23:42:20 -07:00
Pieter Wuille
ef12c2184d
Check minversion before loading the rest of the wallet
...
When a 0.6 wallet with compressed pubkeys is created, it writes a
minversion record to prevent older clients from reading it. If the 0.5
loading it sees a key record before seeing the minversion record however,
it will fail with DB_CORRUPT instead of DB_TOO_NEW.
2012-03-22 04:59:59 +01:00
Pieter Wuille
4538e45c46
Add -checklevel and improve -checkblocks
...
-checkblocks now takes a numeric argument: the number of blocks that must
be verified at the end of the chain. Default is 2500, and 0 means all
blocks.
-checklevel specifies how thorough the verification must be:
0: only check whether the block exists on disk
1: verify block validity (default)
2: verify transaction index validity
3: check transaction hashes
4: check whether spent txouts were spent within the main chain
5: check whether all prevouts are marked spent
6: check whether spent txouts were spent by a valid transaction that consumes them
2012-03-22 03:19:23 +01:00
Gavin Andresen
8f188ece3c
Remove -bip16 and -paytoscripthashtime command-line arguments
2012-03-21 15:45:58 -04:00
Wladimir J. van der Laan
4a43dfbf3e
replace call to PrintConsole with call to error()
...
As these are equivalent functions, this cleans up the source a bit.
Also remove PrintConsole() as this was the only use.
2012-03-21 20:33:53 +01:00
Gavin Andresen
2e2c04e250
Merge pull request #947 from ali1234/master
...
When disconnecting a node, the receive buffer should be cleared
2012-03-21 12:24:57 -07:00
Gavin Andresen
b2fe3a5ca6
Merge pull request #948 from sipa/unstuck
...
Prevent stuck block download in large reorganisations
2012-03-21 12:16:28 -07:00
Gavin Andresen
c2b1ab072c
Merge pull request #965 from khorben/master
...
The generic UNIX Makefile builds with lots of warnings
2012-03-21 07:45:49 -07:00
Pieter Wuille
a1a0469f91
More debug output for failed reorganizations
2012-03-21 13:15:27 +01:00
Michael
246c20e8a9
Correct date
2012-03-21 15:56:38 +08:00
Wladimir J. van der Laan
4046bdf18a
Merge pull request #954 from Diapolo/master
...
language updates for source file bitcoin_en.ts + remove cs_CZ (issue #958 )
2012-03-21 00:18:58 -07:00
Pieter Wuille
0aa89c08ff
Prevent stuck block download in large reorganisations
...
In cases of very large reorganisations (hundreds of blocks), a situation
may appear where an 'inv' is sent as response to a 'getblocks', but the
last block mentioned in the inv is already known to the receiver node.
However, the supplying node uses a request for this last block as a
trigger to send the rest of the inv blocks. If it never comes, the block
chain download is stuck.
This commit makes the receiver node always request the last inv'ed block,
even if it is already known, to prevent this problem.
2012-03-21 05:09:02 +01:00
Pieter Wuille
89516bd4e0
Speed up block downloading
2012-03-21 01:32:00 +01:00
Pierre Pronchery
7868808b2f
Avoid some pointless warnings while compiling
2012-03-21 00:08:19 +01:00
Gavin Andresen
eae82d8ee5
Use last checkpoint instead of hard-coded 140,700. Fixes #913 .
2012-03-20 13:45:45 -04:00
p2k
3f1bb1ac78
Proper support for Growl 1.3 notifications
2012-03-20 12:54:51 -04:00
Pieter Wuille
9aa459b294
assertion in CBlock::SetBestChainInner was too strong
2012-03-20 16:41:36 +01:00
Philip Kaufmann
d6b08f6f2c
remove bitcoin_cs_CZ from bitcoin.qrc and delete bitcoin_cs_CZ.ts
2012-03-20 09:07:05 +01:00
Philip Kaufmann
603061a7e5
updated english language source file via lupdate
2012-03-19 14:08:41 +01:00
Nils Schneider
4ac3eea027
Merge pull request #953 from Diapolo/master
...
german translation update
2012-03-19 05:13:08 -07:00
Philip Kaufmann
8afd4699e6
fixed a capitalization error in the german translation
2012-03-19 10:28:10 +01:00
Philip Kaufmann
7c4fabde60
update german translation from transifex
2012-03-19 09:21:11 +01:00
Wladimir J. van der Laan
bd9c6f88be
Merge pull request #928 from jojkaart/master
...
Make send coins dialog honor the configured unit type even on the first attempt.
2012-03-19 01:08:43 -07:00
Matt Corallo
ecf07f2729
Limit getheaders to a hard 2000.
...
Previously getheaders would return any number of headers up to
2000 + the distance the locator parameter was back (which is up to
~ the number of items in the locator ^ 2).
The only client I was able to find which actually handles the headers
message is BitcoinJ, and it clearly expects no more than 2000 headers
See:
http://code.google.com/p/bitcoinj/source/browse/core/src/main/java/com/google/bitcoin/core/HeadersMessage.java#35
Additionally, the wiki clearly states that getheaders will only ever
return 2000 headers: https://en.bitcoin.it/wiki/Network#Messages
2012-03-19 00:13:15 -04:00
Gregory Maxwell
0b99d1b574
Merge pull request #931 from luke-jr/dbg_loaderr
...
Wallet loading diagnostic prints to debug.log
2012-03-18 20:11:09 -07:00
Joel Kaartinen
aa3d4c0221
Make the sendcoins dialog use the configured unit type, even on the first attempt.
2012-03-18 23:04:17 +02:00
Alistair Buxton
bb13d056ea
When disconnecting a node, clear the received buffer so that we do
...
not process any already received messages.
The primary reason to do this is if a node spams hundreds of messages
and we ban them, we don't want to continue processing the rest of it.
2012-03-18 03:03:24 +00:00