aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-03-30Merge pull request #2361 from L2G/font-tweakWladimir J. van der Laan
Clean up font size in main window for observed inconsistency in Mac OS
2013-03-30Merge pull request #2422 from sipa/nowalcachePieter Wuille
Don't use -dbcache for BDB anymore
2013-03-30Merge pull request #2409 from sipa/txoptimJeff Garzik
Network optimalizations
2013-03-30Process getdata invs separately until send buffer overflowsPieter Wuille
There exists a per-message-processed send buffer overflow protection, where processing is halted when the send buffer is larger than the allowed maximum. This protection does not apply to individual items, however, and getdata has the potential for causing large amounts of data to be sent. In case several hundreds of blocks are requested in one getdata, the send buffer can easily grow 50 megabytes above the send buffer limit. This commit breaks up the processing of getdata requests, remembering them inside a CNode when too many are requested at once.
2013-03-29Use per-message send buffer, rather than per connectionPieter Wuille
2013-03-29Some fixes to CNetMessage processingPieter Wuille
* Change CNode::vRecvMsg to be a deque instead of a vector (less copying) * Make sure to acquire cs_vRecvMsg in CNode::CloseSocketDisconnect (as it may be called without that lock).
2013-03-29P2P: improve RX/TX flow controlJeff Garzik
1) "optimistic write": Push each message to kernel socket buffer immediately. 2) If there is write data at select time, that implies send() blocked during optimistic write. Drain write queue, before receiving any more messages. This avoids needlessly queueing received data, if the remote peer is not themselves receiving data. Result: write buffer (and thus memory usage) is kept small, DoS potential is slightly lower, and TCP flow control signalling is properly utilized. The kernel will queue data into the socket buffer, then signal the remote peer to stop sending data, until we resume reading again.
2013-03-29P2P, cosmetic: break out buffer send(2) code into separate functionJeff Garzik
2013-03-29P2P: parse network datastream into header/data components in socket threadJeff Garzik
Replaces CNode::vRecv buffer with a vector of CNetMessage's. This simplifies ProcessMessages() and eliminates several redundant data copies. Overview: * socket thread now parses incoming message datastream into header/data components, as encapsulated by CNetMessage * socket thread adds each CNetMessage to a vector inside CNode * message thread (ProcessMessages) iterates through CNode's CNetMessage vector Message parsing is made more strict: * Socket is disconnected, if message larger than MAX_SIZE or if CMessageHeader deserialization fails (latter is impossible?). Previously, code would simply eat garbage data all day long. * Socket is disconnected, if we fail to find pchMessageStart. We do not search through garbage, to find pchMessageStart. Each message must begin precisely after the last message ends. ProcessMessages() always processes a complete message, and is more efficient: * buffer is always precisely sized, using CDataStream::resize(), rather than progressively sized in 64k chunks. More efficient for large messages like "block". * whole-buffer memory copy eliminated (vRecv -> vMsg) * other buffer-shifting memory copies eliminated (vRecv.insert, vRecv.erase)
2013-03-29Merge pull request #2411 from TheBlueMatt/masterJeff Garzik
(finally) Remove IRC Seed support now that lfnet is down.
2013-03-29Merge pull request #2385 from gavinandresen/alertnotifyJeff Garzik
alertnotify, so bitcoind users can get email/sms/whatever of alerts
2013-03-29Merge pull request #2424 from laanwj/2013_03_capslockWladimir J. van der Laan
Improve capslock detection on non-us keyboards
2013-03-29qt: Improve capslock detection on non-us keyboards (issue #1855)Wladimir J. van der Laan
On non-us keyboards you can obtain lower case characters even pressing the SHIFT, this caused false positives.
2013-03-29Merge remote-tracking branch 'codeshark/multiwallet-qt-no-core' (pull #2220)Wladimir J. van der Laan
Conflicts: src/qt/bitcoingui.cpp
2013-03-29Merge pull request #2350 from DavidGriffith/masterWladimir J. van der Laan
Also copy the address to the X11 clipboard (the one you middle-click to paste)
2013-03-29Merge pull request #2393 from r000n/stagingWladimir J. van der Laan
Staging - GUI fixes for upstream
2013-03-29Merge pull request #2396 from Nothing4You/add-copytxid-contextmenu-qt-txoverviewWladimir J. van der Laan
Adding 'copy txid' to qt tx overview context menu
2013-03-29Don't use -dbcache for BDB anymorePieter Wuille
-dbcache was originally used to set the maximum buffer size in the BDB environment, and was later changed to set the chainstate cache and leveldb caches. No need to use it for BDB now that only the wallet remains there. This should reduce memory allocation (but not necessarily memory usage) a bit.
2013-03-27Don't specify a point size for "Wallet"Larry Gilbert
2013-03-24Add a new testnet dnsseed (currently only static list, will update)Matt Corallo
2013-03-24Update contrib/debian (including IRC removal)Matt Corallo
2013-03-24(finally) Remove IRC Seed support now that lfnet is down.Matt Corallo
2013-03-23Show window in center of screen on first launchRoman Mindalev
2013-03-23Save & restore window size and positionRoman Mindalev
2013-03-23Fix transaction fee in uBTCRoman Mindalev
Step for buttons 'up' and 'down' - 0.001. With BTC and mBTC all ok, but 0.001 uBTC is lower than minimal value (satoshi) User should press 10 times on 'up' button to get 0.01 uBTC
2013-03-22Minimal architectural changes necessary to support multiple wallets in ↵Eric Lombrozo
bitcoin-qt - This commit is a minimal restructuring necessary to support multiple wallets in the UI. Please see multiwallet-qt.txt for details.
2013-03-22Merge pull request #2400 from gladoscc/masterWladimir J. van der Laan
Update readme copyright 2012 to 2013
2013-03-222012 to 2013gladoscc
2013-03-21Recommend alertnotifyGavin Andresen
2013-03-21Adding 'copy txid' to qt tx overview context menuRichard Schwab
2013-03-19Merge pull request #2384 from gmaxwell/trim_error0Gavin Andresen
Deleting everything except the wallet will not help recover from BDB errors.
2013-03-19-alertnotify=<cmd>Gavin Andresen
Runs a shell command when an AppliesToMe() alert is received. %s in the <cmd> string is replaced with the alert.strStatusBar message.
2013-03-19Deleting everything except the wallet will not help recover from BDB errors.Gregory Maxwell
Now that the wallet is the only thing in BDB any DB open errors must be from the wallet itself-- so deleting everything else will not likely help.
2013-03-19Merge pull request #2378 from Diapolo/translationsWladimir J. van der Laan
update bitcoin_en.ts and bitcoinstrings.cpp
2013-03-19Merge pull request #2215 from Diapolo/Qt_sendfrom_addrbookWladimir J. van der Laan
Bitcoin-Qt: add "send coins" to context menu in addressbook
2013-03-19Merge pull request #2332 from Diapolo/init_messagesWladimir J. van der Laan
harmonize 2 init messages and remove one
2013-03-19Merge pull request #2376 from Diapolo/pro-fileWladimir J. van der Laan
re-enable -D_FORTIFY_SOURCE=2 for all platforms
2013-03-19Merge pull request #2382 from Diapolo/2013Wladimir J. van der Laan
Bitcoin-Qt: update Win executable file meta-data copyright
2013-03-19Some unit tests for CAlertGavin Andresen
2013-03-19re-enable -D_FORTIFY_SOURCE=2 for all platformsPhilip Kaufmann
2013-03-19Bitcoin-Qt: update Win executable file meta-data copyrightPhilip Kaufmann
2013-03-18update bitcoin_en.ts and bitcoinstrings.cppPhilip Kaufmann
2013-03-18Bitcoin-Qt: add "send coins" to context menu in addressbookPhilip Kaufmann
- allows to directly select an address from the addressbook, chose "send coins" from the context menu, which sends you to sendcoins tab and fills in the selected address
2013-03-17Merge pull request #2210 from Diapolo/Qt_header_cpp_cleanupWladimir J. van der Laan
Bitcoin-Qt: massive header and cpp cleanup
2013-03-17Update unit test to match rule enforcement starts 21 MarchGavin Andresen
2013-03-17Checkpoint at first block in 11 March chain forkGavin Andresen
2013-03-17Before 15 May, limit created block size to 500KGavin Andresen
2013-03-17CheckBlock rule until 15-May for 10,000 BDB lock compatibilityGavin Andresen
2013-03-17Bitcoin-Qt: massive header and cpp cleanupPhilip Kaufmann
- try to enforce the same style to all Qt related files - remove unneeded includes from the files - add missing Q_OBJECT, QT_BEGIN_NAMESPACE / QT_END_NAMESPACE - prepares for a pull-req to include Qt5 compatibility
2013-03-13harmonize 2 init messages and remove onePhilip Kaufmann
- harmonize the database related init messages - as we have a thread for importing blocks, that init message is obsolete