Removed ifdef for ipv6.

This commit is contained in:
rakshasa
2014-09-23 18:56:29 +09:00
parent 6c39da6943
commit 0df0a6650d
10 changed files with 15 additions and 149 deletions
+1 -8
View File
@@ -308,13 +308,10 @@ apply_d_add_peer(core::Download* download, const std::string& arg) {
if (download->download()->info()->is_private())
throw torrent::input_error("Download is private.");
#ifdef RAK_USE_INET6
ret = std::sscanf(arg.c_str(), "[%64[^]]]:%i%c", host, &port, &dummy);
if (ret < 1)
ret = std::sscanf(arg.c_str(), "%1023[^:]:%i%c", host, &port, &dummy);
#else
ret = std::sscanf(arg.c_str(), "%1023[^:]:%i%c", host, &port, &dummy);
#endif
if (ret == 1)
port = 6881;
@@ -324,11 +321,7 @@ apply_d_add_peer(core::Download* download, const std::string& arg) {
if (port < 1 || port > 65535)
throw torrent::input_error("Invalid port number.");
#ifdef RAK_USE_INET6
torrent::connection_manager()->resolver()(host, (int)rak::socket_address::pf_unspec, SOCK_STREAM, call_add_d_peer_t(download, port));
#else
torrent::connection_manager()->resolver()(host, (int)rak::socket_address::pf_inet, SOCK_STREAM, call_add_d_peer_t(download, port));
#endif
}
torrent::Object
-4
View File
@@ -170,12 +170,8 @@ apply_scgi(const std::string& arg, int type) {
lt_log_print(torrent::LOG_RPC_EVENTS,
"The SCGI socket has not been bound to any address and likely poses a security risk.");
#ifdef RAK_USE_INET6
} else if (std::sscanf(arg.c_str(), "%1023[^:]:%i%c", address, &port, &dummy) == 2 ||
std::sscanf(arg.c_str(), "[%64[^]]]:%i%c", address, &port, &dummy) == 2) { // [xx::xx]:port format
#else
} else if (std::sscanf(arg.c_str(), "%1023[^:]:%i%c", address, &port, &dummy) == 2) {
#endif
if ((err = rak::address_info::get_address_info(address,PF_UNSPEC, SOCK_STREAM, &ai)) != 0)
throw torrent::input_error("Could not bind address: " + std::string(rak::address_info::strerror(err)) + ".");
+2 -3
View File
@@ -70,12 +70,11 @@ retrieve_p_id_html(torrent::Peer* peer) {
torrent::Object
retrieve_p_address(torrent::Peer* peer) {
const rak::socket_address *addr = rak::socket_address::cast_from(peer->peer_info()->socket_address());
#ifdef RAK_USE_INET6
if (addr->family() == rak::socket_address::af_inet6)
return "[" + addr->address_str() + "]";
else
#endif
return addr->address_str();
return addr->address_str();
}
torrent::Object
+3 -4
View File
@@ -95,9 +95,8 @@ CurlGet::start() {
curl_easy_setopt(m_handle, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_WHATEVER);
curl_easy_setopt(m_handle, CURLOPT_ENCODING, "");
#ifdef RAK_USE_INET6
m_ipv6 = false;
#endif
m_stack->add_get(this);
}
@@ -115,16 +114,16 @@ CurlGet::close() {
m_handle = NULL;
}
#ifdef RAK_USE_INET6
void
CurlGet::retry_ipv6() {
CURL* nhandle = curl_easy_duphandle(m_handle);
curl_easy_setopt(nhandle, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V6);
curl_easy_cleanup(m_handle);
m_handle = nhandle;
m_ipv6 = true;
}
#endif
void
CurlGet::receive_timeout() {
+1 -4
View File
@@ -57,10 +57,9 @@ public:
void start();
void close();
#ifdef RAK_USE_INET6
bool is_using_ipv6() { return m_ipv6; }
void retry_ipv6();
#endif
bool is_busy() const { return m_handle; }
bool is_active() const { return m_active; }
@@ -79,9 +78,7 @@ private:
void receive_timeout();
bool m_active;
#ifdef RAK_USE_INET6
bool m_ipv6;
#endif
rak::priority_item m_taskTimeout;
-9
View File
@@ -228,13 +228,8 @@ Manager::set_bind_address(const std::string& addr) {
int err;
rak::address_info* ai;
#ifdef RAK_USE_INET6
if ((err = rak::address_info::get_address_info(addr.c_str(), PF_INET, SOCK_STREAM, &ai)) != 0 &&
(err = rak::address_info::get_address_info(addr.c_str(), PF_INET6, SOCK_STREAM, &ai)) != 0)
#else
if ((err = rak::address_info::get_address_info(addr.c_str(), PF_INET, SOCK_STREAM, &ai)) != 0)
#endif
throw torrent::input_error("Could not set bind address: " + std::string(rak::address_info::strerror(err)) + ".");
try {
@@ -268,12 +263,8 @@ Manager::set_local_address(const std::string& addr) {
int err;
rak::address_info* ai;
#ifdef RAK_USE_INET6
if ((err = rak::address_info::get_address_info(addr.c_str(), PF_INET, SOCK_STREAM, &ai)) != 0 &&
(err = rak::address_info::get_address_info(addr.c_str(), PF_INET6, SOCK_STREAM, &ai)) != 0)
#else
if ((err = rak::address_info::get_address_info(addr.c_str(), PF_INET, SOCK_STREAM, &ai)) != 0)
#endif
throw torrent::input_error("Could not set local address: " + std::string(rak::address_info::strerror(err)) + ".");
try {
+1 -10
View File
@@ -68,11 +68,7 @@ WindowPeerList::redraw() {
int x = 2;
int y = 0;
#ifdef RAK_USE_INET6
m_canvas->print(x, y, "IP"); x += 25;
#else
m_canvas->print(x, y, "IP"); x += 16;
#endif
m_canvas->print(x, y, "UP"); x += 7;
m_canvas->print(x, y, "DOWN"); x += 7;
m_canvas->print(x, y, "PEER"); x += 7;
@@ -104,20 +100,15 @@ WindowPeerList::redraw() {
x = 0;
std::string ip_address = rak::socket_address::cast_from(p->address())->address_str();
#ifdef RAK_USE_INET6
if (ip_address.size() >= 24) {
ip_address.replace(ip_address.begin() + 21, ip_address.end(), "...");
}
#endif
m_canvas->print(x, y, "%c %s",
range.first == *m_focus ? '*' : ' ',
ip_address.c_str());
#ifdef RAK_USE_INET6
x += 27;
#else
x += 18;
#endif
m_canvas->print(x, y, "%.1f", (double)p->up_rate()->rate() / 1024); x += 7;
m_canvas->print(x, y, "%.1f", (double)p->down_rate()->rate() / 1024); x += 7;
+6 -23
View File
@@ -71,12 +71,10 @@ SocketFd::set_priority(priority_type p) {
check_valid();
int opt = p;
#ifdef RAK_USE_INET6
if (m_ipv6_socket)
return setsockopt(m_fd, IPPROTO_IPV6, IPV6_TCLASS, &opt, sizeof(opt)) == 0;
else
#endif
return setsockopt(m_fd, IPPROTO_IP, IP_TOS, &opt, sizeof(opt)) == 0;
return setsockopt(m_fd, IPPROTO_IP, IP_TOS, &opt, sizeof(opt)) == 0;
}
bool
@@ -135,24 +133,21 @@ SocketFd::get_error() const {
bool
SocketFd::open_stream() {
#ifdef RAK_USE_INET6
m_fd = socket(rak::socket_address::pf_inet6, SOCK_STREAM, IPPROTO_TCP);
if (m_fd == -1) {
m_ipv6_socket = false;
return (m_fd = socket(rak::socket_address::pf_inet, SOCK_STREAM, IPPROTO_TCP)) != -1;
}
m_ipv6_socket = true;
int zero = 0;
return setsockopt(m_fd, IPPROTO_IPV6, IPV6_V6ONLY, &zero, sizeof(zero)) != -1;
#else
return (m_fd = socket(rak::socket_address::pf_inet, SOCK_STREAM, IPPROTO_TCP)) != -1;
#endif
}
bool
SocketFd::open_datagram() {
#ifdef RAK_USE_INET6
m_fd = socket(rak::socket_address::pf_inet6, SOCK_DGRAM, 0);
if (m_fd == -1) {
m_ipv6_socket = false;
@@ -162,9 +157,6 @@ SocketFd::open_datagram() {
int zero = 0;
return setsockopt(m_fd, IPPROTO_IPV6, IPV6_V6ONLY, &zero, sizeof(zero)) != -1;
#else
return (m_fd = socket(rak::socket_address::pf_inet, SOCK_DGRAM, 0)) != -1;
#endif
}
bool
@@ -182,12 +174,11 @@ bool
SocketFd::bind(const rak::socket_address& sa) {
check_valid();
#ifdef RAK_USE_INET6
if (m_ipv6_socket && sa.family() == rak::socket_address::pf_inet) {
rak::socket_address_inet6 sa_mapped = sa.sa_inet()->to_mapped_address();
return !::bind(m_fd, sa_mapped.c_sockaddr(), sizeof(sa_mapped));
}
#endif
return !::bind(m_fd, sa.c_sockaddr(), sa.length());
}
@@ -195,12 +186,11 @@ bool
SocketFd::bind(const rak::socket_address& sa, unsigned int length) {
check_valid();
#ifdef RAK_USE_INET6
if (m_ipv6_socket && sa.family() == rak::socket_address::pf_inet) {
rak::socket_address_inet6 sa_mapped = sa.sa_inet()->to_mapped_address();
return !::bind(m_fd, sa_mapped.c_sockaddr(), sizeof(sa_mapped));
}
#endif
return !::bind(m_fd, sa.c_sockaddr(), length);
}
@@ -208,12 +198,11 @@ bool
SocketFd::connect(const rak::socket_address& sa) {
check_valid();
#ifdef RAK_USE_INET6
if (m_ipv6_socket && sa.family() == rak::socket_address::pf_inet) {
rak::socket_address_inet6 sa_mapped = sa.sa_inet()->to_mapped_address();
return !::connect(m_fd, sa_mapped.c_sockaddr(), sizeof(sa_mapped)) || errno == EINPROGRESS;
}
#endif
return !::connect(m_fd, sa.c_sockaddr(), sa.length()) || errno == EINPROGRESS;
}
@@ -226,11 +215,9 @@ SocketFd::getsockname(rak::socket_address *sa) {
return false;
}
#ifdef RAK_USE_INET6
if (m_ipv6_socket && sa->family() == rak::socket_address::af_inet6) {
*sa = sa->sa_inet6()->normalize_address();
}
#endif
return true;
}
@@ -247,7 +234,6 @@ SocketFd::accept(rak::socket_address* sa) {
check_valid();
socklen_t len = sizeof(rak::socket_address);
#ifdef RAK_USE_INET6
if (sa == NULL) {
return SocketFd(::accept(m_fd, NULL, &len));
}
@@ -256,9 +242,6 @@ SocketFd::accept(rak::socket_address* sa) {
*sa = sa->sa_inet6()->normalize_address();
}
return SocketFd(fd);
#else
return SocketFd(::accept(m_fd, sa != NULL ? sa->c_sockaddr() : NULL, &len));
#endif
}
// unsigned int
-2
View File
@@ -92,9 +92,7 @@ private:
inline void check_valid() const;
int m_fd;
#ifdef RAK_USE_INET6
bool m_ipv6_socket;
#endif
};
}