libtorrent version (or branch): master
m_torrent_session->add_port_mapping(lt::session::tcp, 1234, 1234);
portmap_alert: successfully mapped port using UPnP. external port: UDP/1234
tcp =2 udp=1
tcp =1 udp=2
do you know if this is a problem in RC_1_1 as well?
i use only master
Index: session_impl.cpp
===================================================================
- int session_impl::add_port_mapping(int t, int external_port
- , int local_port)
+ int session_impl::add_port_mapping(session::protocol_type proto, uint16_t external_port
+ , uint16_t local_port)
{
int ret = 0;
- if (m_upnp) ret = m_upnp->add_mapping(static_cast<portmap_protocol>(t), external_port
- , tcp::endpoint({}, static_cast<std::uint16_t>(local_port)));
- if (m_natpmp) ret = m_natpmp->add_mapping(static_cast<portmap_protocol>(t), external_port
- , tcp::endpoint({}, static_cast<std::uint16_t>(local_port)));
+ if (m_upnp) ret = m_upnp->add_mapping(proto == session::udp ? portmap_protocol::udp : portmap_protocol::tcp, external_port
+ , tcp::endpoint({}, local_port));
+ if (m_natpmp) ret = m_natpmp->add_mapping(proto == session::udp ? portmap_protocol::udp : portmap_protocol::tcp, external_port
+ , tcp::endpoint({}, local_port));
return ret;
}
?
It's not a problem in RC_1_1. I will fix it in master