Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

24 lines
1.3 KiB

#ifndef __UPNPNAT_UTILS_H_
#define __UPNPNAT_UTILS_H_
#include <upnp.h>
HRESULT GetNumberOfEntries (IUPnPService * pUS, ULONG * pul);
HRESULT GetExternalIPAddress (IUPnPService * pUS, BSTR * pbstr);
HRESULT InvokeAction (IUPnPService * pUPS, CComBSTR & bstrActionName, VARIANT pvIn, VARIANT * pvOut, VARIANT * pvRet);
HRESULT AddPortMapping (IUPnPService * pUPS, BSTR bstrRemoteHost, long lExternalPort, BSTR bstrProtocol, long lInternalPort, BSTR bstrInternalClient, VARIANT_BOOL vbEnabled, BSTR bstrDescription, long lLeaseDurationDesired);
HRESULT DeletePortMapping (IUPnPService * pUPS, BSTR bstrRemoteHost, long lExternalPort, BSTR bstrProtocol);
HRESULT GetOnlyVariantElementFromVariantSafeArray (VARIANT * pvSA, VARIANT * pv);
HRESULT AddToSafeArray (SAFEARRAY * psa, VARIANT * pv, long lIndex);
HRESULT GetBSTRFromSafeArray (SAFEARRAY * psa, BSTR * pbstr, long lIndex);
HRESULT GetLongFromSafeArray (SAFEARRAY * psa, long * pl, long lIndex);
HRESULT GetBoolFromSafeArray (SAFEARRAY * psa, VARIANT_BOOL * pvb, long lIndex);
NETCON_MEDIATYPE GetMediaType (INetConnection * pNC);
//HRESULT GetOnlyChildDevice (IUPnPDevice * pParent, IUPnPDevice ** ppChild);
//HRESULT FindDeviceByType (IUPnPDevices * pUPDs, BSTR bstrType, IUPnPDevice ** ppUPD);
#endif //__UPNPNAT_UTILS_H_