aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorWladimir J. van der Laan <laanwj@gmail.com>2014-05-01 12:07:03 +0200
committerWladimir J. van der Laan <laanwj@gmail.com>2014-05-01 12:15:36 +0200
commite27c4110d9c47d30fed4b940813c9c8b82a97fbd (patch)
tree288e02bd1addb587a17cfc2c350e74d5545bb56f /src
parent426dc16f7b74d5dc91a947bb22acb7a3a414bb8f (diff)
downloadbitcoin-e27c4110d9c47d30fed4b940813c9c8b82a97fbd.tar.xz
Remove build-time no-IPv6 setting
The year is 2014. All supported operating systems have IPv6 support, most certainly at build time (this doesn't mean that IPv6 is configured, of course). If noone is exercising the functionality to disable it, that means it doesn't get tested, and IMO it's better to get rid of it. (it's also not used consistently in RPC/boost and Net code...)
Diffstat (limited to 'src')
-rw-r--r--src/init.cpp10
-rw-r--r--src/net.cpp12
-rw-r--r--src/netbase.cpp26
-rw-r--r--src/netbase.h4
4 files changed, 0 insertions, 52 deletions
diff --git a/src/init.cpp b/src/init.cpp
index 6e6e4beed9..c33a3f8f55 100644
--- a/src/init.cpp
+++ b/src/init.cpp
@@ -689,12 +689,6 @@ bool AppInit2(boost::thread_group& threadGroup)
SetLimited(net);
}
}
-#if defined(USE_IPV6)
-#if ! USE_IPV6
- else
- SetLimited(NET_IPV6);
-#endif
-#endif
CService addrProxy;
bool fProxy = false;
@@ -706,10 +700,8 @@ bool AppInit2(boost::thread_group& threadGroup)
if (!IsLimited(NET_IPV4))
SetProxy(NET_IPV4, addrProxy, nSocksVersion);
if (nSocksVersion > 4) {
-#ifdef USE_IPV6
if (!IsLimited(NET_IPV6))
SetProxy(NET_IPV6, addrProxy, nSocksVersion);
-#endif
SetNameProxy(addrProxy, nSocksVersion);
}
fProxy = true;
@@ -751,9 +743,7 @@ bool AppInit2(boost::thread_group& threadGroup)
else {
struct in_addr inaddr_any;
inaddr_any.s_addr = INADDR_ANY;
-#ifdef USE_IPV6
fBound |= Bind(CService(in6addr_any, GetListenPort()), BF_NONE);
-#endif
fBound |= Bind(CService(inaddr_any, GetListenPort()), !fBound ? BF_REPORT_ERROR : BF_NONE);
}
if (!fBound)
diff --git a/src/net.cpp b/src/net.cpp
index a0208c9605..a73ff73ebd 100644
--- a/src/net.cpp
+++ b/src/net.cpp
@@ -917,11 +917,7 @@ void ThreadSocketHandler()
BOOST_FOREACH(SOCKET hListenSocket, vhListenSocket)
if (hListenSocket != INVALID_SOCKET && FD_ISSET(hListenSocket, &fdsetRecv))
{
-#ifdef USE_IPV6
struct sockaddr_storage sockaddr;
-#else
- struct sockaddr sockaddr;
-#endif
socklen_t len = sizeof(sockaddr);
SOCKET hSocket = accept(hListenSocket, (struct sockaddr*)&sockaddr, &len);
CAddress addr;
@@ -1582,11 +1578,7 @@ bool BindListenPort(const CService &addrBind, string& strError)
int nOne = 1;
// Create socket for listening for incoming connections
-#ifdef USE_IPV6
struct sockaddr_storage sockaddr;
-#else
- struct sockaddr sockaddr;
-#endif
socklen_t len = sizeof(sockaddr);
if (!addrBind.GetSockAddr((struct sockaddr*)&sockaddr, &len))
{
@@ -1627,7 +1619,6 @@ bool BindListenPort(const CService &addrBind, string& strError)
return false;
}
-#ifdef USE_IPV6
// some systems don't have IPV6_V6ONLY but are always v6only; others do have the option
// and enable it by default or not. Try to enable it, if possible.
if (addrBind.IsIPv6()) {
@@ -1645,7 +1636,6 @@ bool BindListenPort(const CService &addrBind, string& strError)
setsockopt(hListenSocket, IPPROTO_IPV6, nParameterId, (const char*)&nProtLevel, sizeof(int));
#endif
}
-#endif
if (::bind(hListenSocket, (struct sockaddr*)&sockaddr, len) == SOCKET_ERROR)
{
@@ -1712,7 +1702,6 @@ void static Discover(boost::thread_group& threadGroup)
if (AddLocal(addr, LOCAL_IF))
LogPrintf("IPv4 %s: %s\n", ifa->ifa_name, addr.ToString());
}
-#ifdef USE_IPV6
else if (ifa->ifa_addr->sa_family == AF_INET6)
{
struct sockaddr_in6* s6 = (struct sockaddr_in6*)(ifa->ifa_addr);
@@ -1720,7 +1709,6 @@ void static Discover(boost::thread_group& threadGroup)
if (AddLocal(addr, LOCAL_IF))
LogPrintf("IPv6 %s: %s\n", ifa->ifa_name, addr.ToString());
}
-#endif
}
freeifaddrs(myaddrs);
}
diff --git a/src/netbase.cpp b/src/netbase.cpp
index 2b300e5dd3..ec275f738c 100644
--- a/src/netbase.cpp
+++ b/src/netbase.cpp
@@ -78,11 +78,7 @@ bool static LookupIntern(const char *pszName, std::vector<CNetAddr>& vIP, unsign
aiHint.ai_socktype = SOCK_STREAM;
aiHint.ai_protocol = IPPROTO_TCP;
-#ifdef USE_IPV6
aiHint.ai_family = AF_UNSPEC;
-#else
- aiHint.ai_family = AF_INET;
-#endif
#ifdef WIN32
aiHint.ai_flags = fAllowLookup ? 0 : AI_NUMERICHOST;
#else
@@ -102,13 +98,11 @@ bool static LookupIntern(const char *pszName, std::vector<CNetAddr>& vIP, unsign
vIP.push_back(CNetAddr(((struct sockaddr_in*)(aiTrav->ai_addr))->sin_addr));
}
-#ifdef USE_IPV6
if (aiTrav->ai_family == AF_INET6)
{
assert(aiTrav->ai_addrlen >= sizeof(sockaddr_in6));
vIP.push_back(CNetAddr(((struct sockaddr_in6*)(aiTrav->ai_addr))->sin6_addr));
}
-#endif
aiTrav = aiTrav->ai_next;
}
@@ -321,11 +315,7 @@ bool static ConnectSocketDirectly(const CService &addrConnect, SOCKET& hSocketRe
{
hSocketRet = INVALID_SOCKET;
-#ifdef USE_IPV6
struct sockaddr_storage sockaddr;
-#else
- struct sockaddr sockaddr;
-#endif
socklen_t len = sizeof(sockaddr);
if (!addrConnect.GetSockAddr((struct sockaddr*)&sockaddr, &len)) {
LogPrintf("Cannot connect to %s: unsupported network\n", addrConnect.ToString());
@@ -585,12 +575,10 @@ CNetAddr::CNetAddr(const struct in_addr& ipv4Addr)
memcpy(ip+12, &ipv4Addr, 4);
}
-#ifdef USE_IPV6
CNetAddr::CNetAddr(const struct in6_addr& ipv6Addr)
{
memcpy(ip, &ipv6Addr, 16);
}
-#endif
CNetAddr::CNetAddr(const char *pszIp, bool fAllowLookup)
{
@@ -764,11 +752,7 @@ std::string CNetAddr::ToStringIP() const
if (IsTor())
return EncodeBase32(&ip[6], 10) + ".onion";
CService serv(*this, 0);
-#ifdef USE_IPV6
struct sockaddr_storage sockaddr;
-#else
- struct sockaddr sockaddr;
-#endif
socklen_t socklen = sizeof(sockaddr);
if (serv.GetSockAddr((struct sockaddr*)&sockaddr, &socklen)) {
char name[1025] = "";
@@ -813,13 +797,11 @@ bool CNetAddr::GetInAddr(struct in_addr* pipv4Addr) const
return true;
}
-#ifdef USE_IPV6
bool CNetAddr::GetIn6Addr(struct in6_addr* pipv6Addr) const
{
memcpy(pipv6Addr, ip, 16);
return true;
}
-#endif
// get canonical identifier of an address' group
// no two connections will be attempted to addresses with the same group
@@ -993,23 +975,19 @@ CService::CService(const struct in_addr& ipv4Addr, unsigned short portIn) : CNet
{
}
-#ifdef USE_IPV6
CService::CService(const struct in6_addr& ipv6Addr, unsigned short portIn) : CNetAddr(ipv6Addr), port(portIn)
{
}
-#endif
CService::CService(const struct sockaddr_in& addr) : CNetAddr(addr.sin_addr), port(ntohs(addr.sin_port))
{
assert(addr.sin_family == AF_INET);
}
-#ifdef USE_IPV6
CService::CService(const struct sockaddr_in6 &addr) : CNetAddr(addr.sin6_addr), port(ntohs(addr.sin6_port))
{
assert(addr.sin6_family == AF_INET6);
}
-#endif
bool CService::SetSockAddr(const struct sockaddr *paddr)
{
@@ -1017,11 +995,9 @@ bool CService::SetSockAddr(const struct sockaddr *paddr)
case AF_INET:
*this = CService(*(const struct sockaddr_in*)paddr);
return true;
-#ifdef USE_IPV6
case AF_INET6:
*this = CService(*(const struct sockaddr_in6*)paddr);
return true;
-#endif
default:
return false;
}
@@ -1093,7 +1069,6 @@ bool CService::GetSockAddr(struct sockaddr* paddr, socklen_t *addrlen) const
paddrin->sin_port = htons(port);
return true;
}
-#ifdef USE_IPV6
if (IsIPv6()) {
if (*addrlen < (socklen_t)sizeof(struct sockaddr_in6))
return false;
@@ -1106,7 +1081,6 @@ bool CService::GetSockAddr(struct sockaddr* paddr, socklen_t *addrlen) const
paddrin6->sin6_port = htons(port);
return true;
}
-#endif
return false;
}
diff --git a/src/netbase.h b/src/netbase.h
index af40aee94b..95b1795767 100644
--- a/src/netbase.h
+++ b/src/netbase.h
@@ -77,10 +77,8 @@ class CNetAddr
int GetReachabilityFrom(const CNetAddr *paddrPartner = NULL) const;
void print() const;
-#ifdef USE_IPV6
CNetAddr(const struct in6_addr& pipv6Addr);
bool GetIn6Addr(struct in6_addr* pipv6Addr) const;
-#endif
friend bool operator==(const CNetAddr& a, const CNetAddr& b);
friend bool operator!=(const CNetAddr& a, const CNetAddr& b);
@@ -121,10 +119,8 @@ class CService : public CNetAddr
std::string ToStringIPPort() const;
void print() const;
-#ifdef USE_IPV6
CService(const struct in6_addr& ipv6Addr, unsigned short port);
CService(const struct sockaddr_in6& addr);
-#endif
IMPLEMENT_SERIALIZE
(