00001 00002 //written by Luke Lenhart, 2008 00003 //See /docs/License.txt for details on how this code may be used. 00004 00005 #pragma once 00006 00007 #include "Common.h" 00008 #include <vector> 00009 00010 class MPMAMemoryManager; //FD 00011 00012 namespace NET 00013 { 00015 namespace UPNP 00016 { 00018 bool IsAvailable(); 00019 00021 std::string GetInternetFacingIP(); 00022 00024 std::string GetDeviceName(); 00025 00027 extern bool AllowNinjaNatTechniques; 00028 00030 void ClaimUDPPort(uint16 port); 00031 00033 void ClaimTCPPort(uint16 port); 00034 00036 void ReleaseUDPPort(uint16 port); 00037 00039 void ReleaseTCPPort(uint16 port); 00040 } 00041 }