aboutsummaryrefslogtreecommitdiff
path: root/src/netbase.h
Commit message (Collapse)AuthorAgeFilesLines
...
| * Remove I2P support from netbasePieter Wuille2012-10-071-4/+2
| | | | | | | | | | | | | | | | | | | | | | I2P apparently needs 256 bits to store a fully routable address. Garlicat requires a centralized lookup service to map the 80-bit addresses to fully routable ones (as far as I understood), so that's not really usable in our situation. To support I2P routing and peer exchange for it, another solution is needed. This will most likely imply a network protocol change, and extension of the 'addr' message.
* | add LOCK() for proxy related data-structuresPhilip Kaufmann2012-10-041-2/+4
|/ | | | | | | | | - fix #1560 by properly locking proxy related data-structures - update GetProxy() and introduce GetNameProxy() to be able to use a thread-safe local copy from proxyInfo and nameproxyInfo - update usage of GetProxy() all over the source to match the new behaviour, as it now fills a full proxyType object - rename GetNameProxy() into HaveNameProxy() to be more clear
* fix signed/unsigned in strprintf and CNetAddr::GetByte()Philip Kaufmann2012-09-121-1/+1
| | | | | | - I checked every occurance of strprintf() in the code and used %u, where unsigned vars are used - the change to GetByte() was made, as ip is an unsigned char
* Bugfix: Fix a variety of misspellingsLuke Dashjr2012-08-011-2/+2
|
* Rewrite CNetAddr::GetReachabilityFrom()Pieter Wuille2012-06-231-1/+1
| | | | Add support for Tor/I2P networks, and make code more readable.
* Node support for Tor hidden servicesPieter Wuille2012-06-231-3/+4
| | | | | | 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.
* Merge pull request #1399 from sipa/ipparseGavin Andresen2012-06-181-0/+1
|\ | | | | Improve parsing of IPv6 addresses
| * Improve parsing of IPv6 addressesPieter Wuille2012-06-141-0/+1
| | | | | | | | | | | | | | 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
* | Merge branch 'signbugs' of https://github.com/wizeman/bitcoinGavin Andresen2012-06-181-1/+1
|\ \ | |/ |/| | | Resolved minor conflict in main.cpp
| * Make CNetAddr::GetHash() return an unsigned val.Ricardo M. Correia2012-05-131-1/+1
| | | | | | | | | | | | 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.
* | Rework network config settingsPieter Wuille2012-05-311-9/+8
| |
* | Update License in File HeadersFordy2012-05-181-1/+1
|/ | | | | | 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.
* Separate listening sockets, -bind=<addr>Pieter Wuille2012-05-111-2/+2
|
* Add -noproxy to circumvent proxy for some networkPieter Wuille2012-05-111-0/+1
|
* Limited relaying/storing of foreign addressesPieter Wuille2012-05-111-0/+14
| | | | | | | 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.
* Preliminary support for Tor/I2P hidden servicesPieter Wuille2012-05-111-0/+2
| | | | | | | | | | | 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.
* IPv6 node supportPieter Wuille2012-05-111-0/+1
| | | | | | 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.
* Support for multiple local addressesPieter Wuille2012-05-041-0/+1
|
* Support connecting by hostnames passed to proxy (-proxydns)Pieter Wuille2012-05-041-0/+4
|
* Remove headers.hPieter Wuille2012-04-171-21/+0
|
* Fix sign-compare warnings: netbase's Lookup* max-solutions may be unsignedJeff Garzik2012-04-151-3/+3
|
* VC2010 compile fixesWladimir J. van der Laan2012-04-031-0/+8
|
* fixed typo in comment in netbase.h and bignum.hPhilip Kaufmann2012-03-301-1/+1
|
* Begin doxygen-compatible commentsPieter Wuille2012-03-261-1/+2
|
* Update all copyrights to 2012Gavin Andresen2012-02-071-1/+1
|
* Fix handling of default portsPieter Wuille2012-01-171-6/+6
|
* Add -keepnode which attempts to -addnode and keep a connection openMatt Corallo2012-01-121-0/+1
|
* Network stack refactorPieter Wuille2012-01-061-0/+138
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.