diff --git a/src/connectivity/ice_socket.h b/src/connectivity/ice_socket.h index 53a75072a2d6a64f45c7db402afff265a2ca5826..45c5fc01bb16a27cee6928bc21a33f6148fba0aa 100644 --- a/src/connectivity/ice_socket.h +++ b/src/connectivity/ice_socket.h @@ -55,52 +55,4 @@ public: int getCompId() const { return compId_; }; }; -/// ICE transport as a GenericSocket. -/// -/// \warning Simplified version where we assume that ICE protocol -/// always use UDP over IP over ETHERNET, and doesn't add more header to the UDP payload. -/// -class IceSocketTransport final : public GenericSocket<uint8_t> -{ -public: - using SocketType = GenericSocket<uint8_t>; - - static constexpr uint16_t STANDARD_MTU_SIZE - = 1280; // Size in bytes of MTU for IPv6 capable networks - static constexpr uint16_t IPV6_HEADER_SIZE = 40; // Size in bytes of IPv6 packet header - static constexpr uint16_t IPV4_HEADER_SIZE = 20; // Size in bytes of IPv4 packet header - static constexpr uint16_t UDP_HEADER_SIZE = 8; // Size in bytes of UDP header - - IceSocketTransport(std::shared_ptr<IceTransport>& ice, int comp_id, bool reliable = false) - : compId_ {comp_id} - , ice_ {ice} - , reliable_ {reliable} - {} - - bool isReliable() const override { return reliable_; } - - void shutdown() override; - - bool isInitiator() const override; - - int maxPayload() const override; - - int waitForData(std::chrono::milliseconds timeout, std::error_code& ec) const override; - - std::size_t write(const ValueType* buf, std::size_t len, std::error_code& ec) override; - - std::size_t read(ValueType* buf, std::size_t len, std::error_code& ec) override; - - void setOnRecv(RecvCb&& cb) override; - - IpAddr localAddr() const override; - - IpAddr remoteAddr() const override; - -private: - const int compId_; - std::shared_ptr<IceTransport> ice_; - bool reliable_; -}; - }; // namespace jami diff --git a/src/connectivity/ice_transport.cpp b/src/connectivity/ice_transport.cpp index 33529561cddaa7308eebd1da2ce360469aabf799..ecd0ae1fb8ab75324193ad687438d0b0585536cc 100644 --- a/src/connectivity/ice_transport.cpp +++ b/src/connectivity/ice_transport.cpp @@ -1849,82 +1849,6 @@ IceTransportFactory::createUTransport(std::string_view name) //============================================================================== -void -IceSocketTransport::setOnRecv(RecvCb&& cb) -{ - return ice_->setOnRecv(compId_, cb); -} - -bool -IceSocketTransport::isInitiator() const -{ - return ice_->isInitiator(); -} - -void -IceSocketTransport::shutdown() -{ - ice_->cancelOperations(); -} - -int -IceSocketTransport::maxPayload() const -{ - auto ip_header_size = (ice_->getRemoteAddress(compId_).getFamily() == AF_INET) - ? IPV4_HEADER_SIZE - : IPV6_HEADER_SIZE; - return STANDARD_MTU_SIZE - ip_header_size - UDP_HEADER_SIZE; -} - -int -IceSocketTransport::waitForData(std::chrono::milliseconds timeout, std::error_code& ec) const -{ - if (!ice_->isRunning()) - return -1; - return ice_->waitForData(compId_, timeout, ec); -} - -std::size_t -IceSocketTransport::write(const ValueType* buf, std::size_t len, std::error_code& ec) -{ - auto res = ice_->send(compId_, buf, len); - if (res < 0) { - ec.assign(errno, std::generic_category()); - return 0; - } - ec.clear(); - return res; -} - -std::size_t -IceSocketTransport::read(ValueType* buf, std::size_t len, std::error_code& ec) -{ - if (!ice_->isRunning()) - return 0; - try { - auto res = reliable_ ? ice_->recvfrom(compId_, reinterpret_cast<char*>(buf), len, ec) - : ice_->recv(compId_, buf, len, ec); - return (res < 0) ? 0 : res; - } catch (const std::exception& e) { - JAMI_ERR("IceSocketTransport::read exception: %s", e.what()); - } - return 0; -} - -IpAddr -IceSocketTransport::localAddr() const -{ - return ice_->getLocalAddress(compId_); -} - -IpAddr -IceSocketTransport::remoteAddr() const -{ - return ice_->getRemoteAddress(compId_); -} - -//============================================================================== - void IceSocket::close() {