aboutsummaryrefslogtreecommitdiff
path: root/src/net.cpp
AgeCommit message (Collapse)Author
2012-02-01Avoid advertising the node's address when it is not listening or ↵Gregory Maxwell
IsInitialBlockDownload(). This also avoids flushing setAddrKnown until 24 hours has passed, and avoids contacting the external IP services when not listening. Advertising non-listening nodes is just addr message spam. It doesn't help the network, in fact it hurts the network, and it also hurts user's privacy. Advertising far out of sync nodes doesn't help the network— they can't even forward (most) transactions and wastes nodes outbound slots.
2012-01-31Fix UPnP by reannouncing every 20 minutes.Matt Corallo
2012-01-19Merge branch 'updateseednodes' of https://github.com/nanotube/bitcoinGavin Andresen
2012-01-19Merge branch 'tabs-to-space' of https://github.com/larsr/bitcoinGavin Andresen
2012-01-19Update seednodes, pick long-uptime nodes with version >= 0.4.0Daniel Folkinshteyn
2012-01-17Fix handling of default portsPieter Wuille
2012-01-16Merge branch 'keepnode' of https://github.com/TheBlueMatt/bitcoinGavin Andresen
2012-01-14Replace tabs with four spaces to comply with coding standard in doc/coding.txtLars Rasmusson
2012-01-12Minor code cleanup to use fHaveUPnP instead of #ifdefMatt Corallo
2012-01-12Add -keepnode which attempts to -addnode and keep a connection openMatt Corallo
2012-01-12Compile with extra warnings turned on. And more makefile/code tidying up.Gavin Andresen
This turns on most gcc warnings, and removes some unused variables and other code that triggers warnings. Exceptions are: -Wno-sign-compare : triggered by lots of comparisons of signed integer to foo.size(), which is unsigned. -Wno-char-subscripts : triggered by the convert-to-hex functions (I may fix this in a future commit).
2012-01-06Network stack refactorPieter Wuille
This introduces CNetAddr and CService, respectively wrapping an (IPv6) IP address and an IP+port combination. This functionality used to be part of CAddress, which also contains network flags and connection attempt information. These extra fields are however not always necessary. These classes, along with logic for creating connections and doing name lookups, are moved to netbase.{h,cpp}, which does not depend on headers.h. Furthermore, CNetAddr is mostly IPv6-ready, though IPv6 functionality is not yet enabled for the application itself.
2012-01-03Fix issue #659, and cleanup wallet/command-line argument handling a bitGavin Andresen
2012-01-03Fix some address-handling deadlocksPieter Wuille
Made three critical blocks for cs_mapAddresses smaller, and moved writing to the database out of them. This should also improve the concurrency of the code.
2011-12-21Revert "Use standard C99 (and Qt) types for 64-bit integers"Wladimir J. van der Laan
This reverts commit 21d9f36781604e4ca9fc35dc65265593423b73e9.
2011-12-20Use standard C99 (and Qt) types for 64-bit integersLuke Dashjr
2011-12-19Use std::numeric_limits<> for typesafe INT_MAX/etcGavin Andresen
2011-12-19Merge pull request #707 from gavinandresen/BIP14Gavin Andresen
Implement BIP 14 : separate protocol version from client version
2011-12-19Implement BIP 14 : separate protocol version from client versionGavin Andresen
2011-12-16Add my DNS seed domainLuke Dashjr
2011-12-16Add sipa's new dnsseed.Matt Corallo
2011-12-12Merge pull request #694 from luke-jr/restore_old_miniupnp_compatGavin Andresen
Restore compatibility with miniupnpc 1.5 (without breaking miniupnp 1.6)
2011-12-10Restore compatibility with miniupnpc 1.5 (without breaking miniupnp 1.6)Luke Dashjr
2011-11-26Move DNS Seed lookup to a new thread.Matt Corallo
2011-10-31Remove vladimir's DNS seed, at his request.Jeff Garzik
2011-10-07Fix build on windows and macGavin Andresen
Replaced all occurrences of #if* __WXMSW__ with WIN32, and all occurrences of __WXMAC_OSX__ with MAC_OSX, and made sure those are defined appropriately in the makefile and bitcoin-qt.pro.
2011-10-05Merge pull request #558 from ↵Gavin Andresen
luke-jr/bugfix_CreateThread_ThreadSocketHandler_errReporting Bugfix: ThreadSocketHandler creation error
2011-10-05Merge pull request #561 from luke-jr/optimize_conn_adjtimeGavin Andresen
Only GetAdjustedTime once for the retry loop
2011-10-03Bugfix: report error creating ThreadSocketHandler thread just like the restLuke Dashjr
2011-10-03Only GetAdjustedTime once for the retry loopLuke Dashjr
2011-09-21Framework for banning mis-behaving peersGavin Andresen
2011-09-19SocketHandler thread can be detachedPieter Wuille
2011-09-06Fix AddAddress cs_mapaddresses/db transaction deadlockGavin Andresen
2011-09-02Stay connected to seed nodes; disconnecting causes problems if you are ↵Gavin Andresen
trying to make the initial blockchain download.
2011-09-02Give hard-coded seed nodes a random last-seen time, to randomize order ↵Gavin Andresen
they're tried.
2011-09-02Update the list of seednodes.Daniel Folkinshteyn
Nodes culled from MagicalTux's database of bitcoin nodes, http://dump.bitcoin.it/misc/ by version and longevity, and tested for connectivity.
2011-09-01Merge branch 'code-cleanup' of git://github.com/muggenhor/bitcoinGavin Andresen
2011-08-23Upgrade dependancies and tweak build process.Matt Corallo
* Upgrade to use miniupnpc 1.6 * Upgrade to wxWidgets 2.9.2 * Upgrade to Bost 1.47 for Win32 Builds
2011-08-19Make some global variables less-global (static)Giel van Schijndel
Explicitly make these global variables less-global to reduce the maximum scope of this global state. In my experience global variables tend to be a major source of bugs. As such the less accessible they are the less likely they are to be the source of a bug. Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-08-11Merge pull request #458 from TheBlueMatt/copyrightGavin Andresen
Unify copyright notices.
2011-08-10Test for SO_NOSIGPIPE rather than assuming all BSDs support it.Venkatesh Srinivas
Signed-off-by: Jeff Garzik <jgarzik@exmulti.com>
2011-08-09Do-nothing MapPort() ifndef USE_UPNP. fixes #450Gavin Andresen
2011-08-09Unify copyright notices.Matt Corallo
To a variation on: // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2011 The Bitcoin developers
2011-08-01Identify as "Bitcoin + version number" when mapping UPnP portJohannes Henninger
Makes Bitcoin identify itself as "Bitcoin + version number" instead of the nondescript "libminiupnpc" when forwarding a port via UPnP.
2011-07-14Single DB transaction for addresses from DNS seedsStéphane Gimenez
2011-07-14Single DB transaction for all addresses in a messagePatrick Varilly
Cuts disk activity at startup immensely
2011-07-13fix warning: unused variable 'X' [-Wunused-variable]Giel van Schijndel
Remove several unused variables. Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-07-13fix warning: comparison of unsigned expression < 0 is always false ↵Giel van Schijndel
[-Wtautological-compare] Don't check for a negative parameter count, because not only will it never happen, it doesn't make any sense either. Invalid sockets (as returned by socket(2)) are always exactly -1 (not just negative as negative file descriptors are technically not prohibited by POSIX) on POSIX systems. Since we store them in SOCKET (unsigned int), however, that really is ~0U (or MAX_UINT) which happens to be what INVALID_SOCKET is already defined to, so an additional check for being negative is not only unnecessary (unsigned integers aren't *ever* negative) its redundant as well (the INVALID_SOCKET comparison is enough). Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-07-05Added a couple minor things to match newer build process.Matt Corallo
This adds the relevent patches which are applied to wx, and updates for cross compiling.
2011-07-02Give more detailed error messages for connection failure.Matt Corallo