crate::ix!();
#[cfg(USE_UPNP)] pub const DEFAULT_UPNP: bool = USE_UPNP;
#[cfg(not(USE_UPNP))] pub const DEFAULT_UPNP: bool = false;
#[cfg(USE_NATPMP)] pub const DEFAULT_NATPMP: bool = USE_NATPMP;
#[cfg(not(USE_NATPMP))] pub const DEFAULT_NATPMP: bool = false;
#[repr(u32)]
pub enum MapPortProtoFlag {
NONE = 0x00,
UPNP = 0x01,
NAT_PMP = 0x02,
}
#[cfg(USE_UPNP)]
const_assert!{
MINIUPNPC_API_VERSION >= 10
}
#[cfg(any(USE_NATPMP,USE_UPNP))]
lazy_static!{
}
#[cfg(any(USE_NATPMP,USE_UPNP))]
pub const PORT_MAPPING_REANNOUNCE_PERIOD: Minutes = 20;
#[cfg(any(USE_NATPMP,USE_UPNP))]
pub const PORT_MAPPING_RETRY_PERIOD: Minutes = 5;
#[cfg(any(USE_NATPMP,USE_UPNP))]
#[cfg(USE_NATPMP)]
lazy_static!{
}
#[cfg(any(USE_NATPMP,USE_UPNP))]
#[cfg(USE_NATPMP)]
pub fn natpmp_init(natpmp: *mut NatPmp) -> bool {
todo!();
}
#[cfg(any(USE_NATPMP,USE_UPNP))]
#[cfg(USE_NATPMP)]
pub fn natpmp_discover(
natpmp: *mut NatPmp,
external_ipv4_addr: &mut InAddr) -> bool {
todo!();
}
#[cfg(any(USE_NATPMP,USE_UPNP))]
#[cfg(USE_NATPMP)]
pub fn natpmp_mapping(
natpmp: *mut NatPmp,
external_ipv4_addr: &InAddr,
private_port: u16,
external_ip_discovered: &mut bool) -> bool {
todo!();
}
#[cfg(any(USE_NATPMP,USE_UPNP))]
#[cfg(USE_NATPMP)]
pub fn process_natpmp() -> bool {
todo!();
}
#[cfg(any(USE_NATPMP,USE_UPNP))]
#[cfg(USE_UPNP)]
pub fn process_upnp() -> bool {
todo!();
}
#[cfg(any(USE_NATPMP,USE_UPNP))]
pub fn thread_map_port() {
todo!();
}
#[cfg(any(USE_NATPMP,USE_UPNP))]
pub fn start_thread_map_port() {
todo!();
}
#[cfg(any(USE_NATPMP,USE_UPNP))]
pub fn dispatch_map_port() {
todo!();
}
#[cfg(any(USE_NATPMP,USE_UPNP))]
pub fn map_port_proto_set_enabled(
proto: MapPortProtoFlag,
enabled: bool) {
todo!();
}
#[cfg(any(USE_NATPMP,USE_UPNP))]
pub fn start_map_port(
use_upnp: bool,
use_natpmp: bool) {
todo!();
}
#[cfg(any(USE_NATPMP,USE_UPNP))]
pub fn interrupt_map_port() {
todo!();
}
#[cfg(any(USE_NATPMP,USE_UPNP))]
pub fn stop_map_port() {
todo!();
}
#[cfg(not(any(USE_NATPMP,USE_UPNP)))]
pub fn start_map_port(
use_upnp: bool,
use_natpmp: bool) {
}
#[cfg(not(any(USE_NATPMP,USE_UPNP)))]
pub fn interrupt_map_port() {
}
#[cfg(not(any(USE_NATPMP,USE_UPNP)))]
pub fn stop_map_port() {
}