040b4a09341f574825386333398110f4db3e1e51vboxsync/*
040b4a09341f574825386333398110f4db3e1e51vboxsync * Copyright 2009 Jacek Caban for CodeWeavers
040b4a09341f574825386333398110f4db3e1e51vboxsync *
040b4a09341f574825386333398110f4db3e1e51vboxsync * This library is free software; you can redistribute it and/or
040b4a09341f574825386333398110f4db3e1e51vboxsync * modify it under the terms of the GNU Lesser General Public
040b4a09341f574825386333398110f4db3e1e51vboxsync * License as published by the Free Software Foundation; either
040b4a09341f574825386333398110f4db3e1e51vboxsync * version 2.1 of the License, or (at your option) any later version.
040b4a09341f574825386333398110f4db3e1e51vboxsync *
040b4a09341f574825386333398110f4db3e1e51vboxsync * This library is distributed in the hope that it will be useful,
040b4a09341f574825386333398110f4db3e1e51vboxsync * but WITHOUT ANY WARRANTY; without even the implied warranty of
040b4a09341f574825386333398110f4db3e1e51vboxsync * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
040b4a09341f574825386333398110f4db3e1e51vboxsync * Lesser General Public License for more details.
040b4a09341f574825386333398110f4db3e1e51vboxsync *
040b4a09341f574825386333398110f4db3e1e51vboxsync * You should have received a copy of the GNU Lesser General Public
040b4a09341f574825386333398110f4db3e1e51vboxsync * License along with this library; if not, write to the Free Software
040b4a09341f574825386333398110f4db3e1e51vboxsync * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
040b4a09341f574825386333398110f4db3e1e51vboxsync */
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync/*
4b9d6701570cb98fd36e209314239d104ec584d3vboxsync * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
4b9d6701570cb98fd36e209314239d104ec584d3vboxsync * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
040b4a09341f574825386333398110f4db3e1e51vboxsync * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
040b4a09341f574825386333398110f4db3e1e51vboxsync * a choice of LGPL license versions is made available with the language indicating
040b4a09341f574825386333398110f4db3e1e51vboxsync * that LGPLv2 or any later version may be used, or where a choice of which version
040b4a09341f574825386333398110f4db3e1e51vboxsync * of the LGPL is applied is otherwise unspecified.
040b4a09341f574825386333398110f4db3e1e51vboxsync */
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync#ifndef DO_NO_IMPORTS
040b4a09341f574825386333398110f4db3e1e51vboxsyncimport "oaidl.idl";
040b4a09341f574825386333398110f4db3e1e51vboxsyncimport "unknwn.idl";
040b4a09341f574825386333398110f4db3e1e51vboxsyncimport "wtypes.idl";
040b4a09341f574825386333398110f4db3e1e51vboxsync/* import "prsht.idl"; */
040b4a09341f574825386333398110f4db3e1e51vboxsync#endif
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsynccpp_quote("DEFINE_GUID(CLSID_NetSharingManager,0x5c63c1ad,0x3956,0x4ff8,0x84,0x86,0x40,0x03,0x47,0x58,0x31,0x5b);")
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync[
040b4a09341f574825386333398110f4db3e1e51vboxsync object,
040b4a09341f574825386333398110f4db3e1e51vboxsync uuid(c08956a1-1cd3-11d1-b1c5-00805fc1270e),
040b4a09341f574825386333398110f4db3e1e51vboxsync pointer_default(unique)
040b4a09341f574825386333398110f4db3e1e51vboxsync]
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface INetConnection : IUnknown
040b4a09341f574825386333398110f4db3e1e51vboxsync{
040b4a09341f574825386333398110f4db3e1e51vboxsync typedef enum tagNETCON_CHARACTERISTIC_FLAGS
040b4a09341f574825386333398110f4db3e1e51vboxsync {
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_NONE = 0x0000,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_ALL_USERS = 0x0001,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_ALLOW_DUPLICATION = 0x0002,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_ALLOW_REMOVAL = 0x0004,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_ALLOW_RENAME = 0x0008,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_INCOMING_ONLY = 0x0020,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_OUTGOING_ONLY = 0x0040,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_BRANDED = 0x0080,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_SHARED = 0x0100,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_BRIDGED = 0x0200,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_FIREWALLED = 0x0400,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_DEFAULT = 0x0800,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_HOMENET_CAPABLE = 0x1000,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_SHARED_PRIVATE = 0x2000,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_QUARANTINED = 0x4000,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_RESERVED = 0x8000,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_BLUETOOTH_MASK = 0x000F0000,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCCF_LAN_MASK = 0x00F00000
040b4a09341f574825386333398110f4db3e1e51vboxsync } NETCON_CHARACTERISTIC_FLAGS;
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync typedef enum tagNETCON_STATUS
040b4a09341f574825386333398110f4db3e1e51vboxsync {
040b4a09341f574825386333398110f4db3e1e51vboxsync NCS_DISCONNECTED,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCS_CONNECTING,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCS_CONNECTED,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCS_DISCONNECTING,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCS_HARDWARE_NOT_PRESENT,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCS_HARDWARE_DISABLED,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCS_HARDWARE_MALFUNCTION,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCS_MEDIA_DISCONNECTED,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCS_AUTHENTICATING,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCS_AUTHENTICATION_SUCCEEDED,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCS_AUTHENTICATION_FAILED,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCS_INVALID_ADDRESS,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCS_CREDENTIALS_REQUIRED
040b4a09341f574825386333398110f4db3e1e51vboxsync } NETCON_STATUS;
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync typedef enum tagNETCON_TYPE
040b4a09341f574825386333398110f4db3e1e51vboxsync {
040b4a09341f574825386333398110f4db3e1e51vboxsync NCT_DIRECT_CONNECT,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCT_INBOUND,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCT_INTERNET,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCT_LAN,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCT_PHONE,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCT_TUNNEL,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCT_BRIDGE
040b4a09341f574825386333398110f4db3e1e51vboxsync } NETCON_TYPE;
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync typedef enum tagNETCON_MEDIATYPE
040b4a09341f574825386333398110f4db3e1e51vboxsync {
040b4a09341f574825386333398110f4db3e1e51vboxsync NCM_NONE,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCM_DIRECT,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCM_ISDN,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCM_LAN,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCM_PHONE,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCM_TUNNEL,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCM_PPPOE,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCM_BRIDGE,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCM_SHAREDACCESSHOST_LAN,
040b4a09341f574825386333398110f4db3e1e51vboxsync NCM_SHAREDACCESSHOST_RAS
040b4a09341f574825386333398110f4db3e1e51vboxsync } NETCON_MEDIATYPE;
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync typedef struct tagNETCON_PROPERTIES
040b4a09341f574825386333398110f4db3e1e51vboxsync {
040b4a09341f574825386333398110f4db3e1e51vboxsync GUID guidId;
040b4a09341f574825386333398110f4db3e1e51vboxsync [string] LPWSTR pszwName;
040b4a09341f574825386333398110f4db3e1e51vboxsync [string] LPWSTR pszwDeviceName;
040b4a09341f574825386333398110f4db3e1e51vboxsync NETCON_STATUS Status;
040b4a09341f574825386333398110f4db3e1e51vboxsync NETCON_MEDIATYPE MediaType;
040b4a09341f574825386333398110f4db3e1e51vboxsync DWORD dwCharacter;
040b4a09341f574825386333398110f4db3e1e51vboxsync CLSID clsidThisObject;
040b4a09341f574825386333398110f4db3e1e51vboxsync CLSID clsidUiObject;
040b4a09341f574825386333398110f4db3e1e51vboxsync } NETCON_PROPERTIES;
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Connect();
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Disconnect();
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Delete();
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Duplicate(
040b4a09341f574825386333398110f4db3e1e51vboxsync [in, string] LPCWSTR pszwDuplicateName,
040b4a09341f574825386333398110f4db3e1e51vboxsync [out] INetConnection **ppCon);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT GetProperties([out] NETCON_PROPERTIES **ppProps);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT GetUiObjectClassId([out, ref] CLSID *pclsid);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Rename([in, string] LPCWSTR pszwNewName);
040b4a09341f574825386333398110f4db3e1e51vboxsync}
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync[
040b4a09341f574825386333398110f4db3e1e51vboxsync object,
040b4a09341f574825386333398110f4db3e1e51vboxsync uuid(24b7e9b5-e38f-4685-851b-00892cf5f940),
040b4a09341f574825386333398110f4db3e1e51vboxsync oleautomation,
040b4a09341f574825386333398110f4db3e1e51vboxsync dual,
040b4a09341f574825386333398110f4db3e1e51vboxsync pointer_default(unique)
040b4a09341f574825386333398110f4db3e1e51vboxsync]
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface INetSharingPortMappingProps : IDispatch
040b4a09341f574825386333398110f4db3e1e51vboxsync{
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(1)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Name([out, retval] BSTR *pbstrName);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(2)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT IPProtocol([out, retval] UCHAR *pucIPProt);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(3)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT ExternalPort([out, retval] long *pusPort);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(4)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT InternalPort([out, retval] long *pusPort);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(5)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Options([out, retval] long *pdwOptions);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(6)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT TargetName([out, retval] BSTR *pbstrTargetName);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(7)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT TargetIPAddress([out, retval] BSTR *pbstrTargetIPAddress);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(8)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Enabled([out, retval] VARIANT_BOOL *pbool);
040b4a09341f574825386333398110f4db3e1e51vboxsync}
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync[
040b4a09341f574825386333398110f4db3e1e51vboxsync object,
040b4a09341f574825386333398110f4db3e1e51vboxsync uuid(c08956b1-1cd3-11d1-b1c5-00805fc1270e),
040b4a09341f574825386333398110f4db3e1e51vboxsync oleautomation,
040b4a09341f574825386333398110f4db3e1e51vboxsync dual,
040b4a09341f574825386333398110f4db3e1e51vboxsync pointer_default(unique)
040b4a09341f574825386333398110f4db3e1e51vboxsync]
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface INetSharingPortMapping : IDispatch
040b4a09341f574825386333398110f4db3e1e51vboxsync{
040b4a09341f574825386333398110f4db3e1e51vboxsync [id(1)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Disable();
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [id(2)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Enable();
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(3)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Properties([out, retval] INetSharingPortMappingProps **ppNSPMP);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [id(4)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Delete();
040b4a09341f574825386333398110f4db3e1e51vboxsync};
040b4a09341f574825386333398110f4db3e1e51vboxsync[
040b4a09341f574825386333398110f4db3e1e51vboxsync object,
040b4a09341f574825386333398110f4db3e1e51vboxsync uuid(02e4a2de-da20-4e34-89c8-ac22275a010b),
040b4a09341f574825386333398110f4db3e1e51vboxsync oleautomation,
040b4a09341f574825386333398110f4db3e1e51vboxsync dual,
040b4a09341f574825386333398110f4db3e1e51vboxsync pointer_default(unique)
040b4a09341f574825386333398110f4db3e1e51vboxsync]
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface INetSharingPortMappingCollection : IDispatch
040b4a09341f574825386333398110f4db3e1e51vboxsync{
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(DISPID_NEWENUM), restricted]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT _NewEnum([out, retval] IUnknown **pVal);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(1)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Count([out, retval] long *pVal);
040b4a09341f574825386333398110f4db3e1e51vboxsync}
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync[
040b4a09341f574825386333398110f4db3e1e51vboxsync object,
040b4a09341f574825386333398110f4db3e1e51vboxsync uuid(c08956b6-1cd3-11d1-b1c5-00805fc1270e),
040b4a09341f574825386333398110f4db3e1e51vboxsync oleautomation,
040b4a09341f574825386333398110f4db3e1e51vboxsync dual,
040b4a09341f574825386333398110f4db3e1e51vboxsync pointer_default(unique)
040b4a09341f574825386333398110f4db3e1e51vboxsync]
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface INetSharingConfiguration : IDispatch
040b4a09341f574825386333398110f4db3e1e51vboxsync{
040b4a09341f574825386333398110f4db3e1e51vboxsync typedef enum tagSHARINGCONNECTIONTYPE {
040b4a09341f574825386333398110f4db3e1e51vboxsync ICSSHARINGTYPE_PUBLIC,
040b4a09341f574825386333398110f4db3e1e51vboxsync ICSSHARINGTYPE_PRIVATE
040b4a09341f574825386333398110f4db3e1e51vboxsync } SHARINGCONNECTIONTYPE, *LPSHARINGCONNECTIONTYPE;
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync typedef enum tagSHARINGCONNECTION_ENUM_FLAGS {
040b4a09341f574825386333398110f4db3e1e51vboxsync ICSSC_DEFAULT,
040b4a09341f574825386333398110f4db3e1e51vboxsync ICSSC_ENABLED
040b4a09341f574825386333398110f4db3e1e51vboxsync } SHARINGCONNECTION_ENUM_FLAGS;
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync typedef enum tagICS_TARGETTYPE {
040b4a09341f574825386333398110f4db3e1e51vboxsync ICSTT_NAME,
040b4a09341f574825386333398110f4db3e1e51vboxsync ICSTT_IPADDRESS
040b4a09341f574825386333398110f4db3e1e51vboxsync }ICS_TARGETTYPE;
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(1)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT SharingEnabled([out, retval] VARIANT_BOOL *pbEnabled);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(2)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT SharingConnectionType([out, retval] SHARINGCONNECTIONTYPE *pType);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [id(3)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT DisableSharing();
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [id(4)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT EnableSharing([in] SHARINGCONNECTIONTYPE Type);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(5)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT InternetFirewallEnabled([out, retval] VARIANT_BOOL *pbEnabled);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [id(6)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT DisableInternetFirewall();
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [id(7)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT EnableInternetFirewall();
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(8)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT EnumPortMappings(
040b4a09341f574825386333398110f4db3e1e51vboxsync [in] SHARINGCONNECTION_ENUM_FLAGS Flags,
040b4a09341f574825386333398110f4db3e1e51vboxsync [out, retval] INetSharingPortMappingCollection **ppColl);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [id(9)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT AddPortMapping(
040b4a09341f574825386333398110f4db3e1e51vboxsync [in] BSTR bstrName,
040b4a09341f574825386333398110f4db3e1e51vboxsync [in] UCHAR ucIPProtocol,
040b4a09341f574825386333398110f4db3e1e51vboxsync [in] USHORT usExternalPort,
040b4a09341f574825386333398110f4db3e1e51vboxsync [in] USHORT usInternalPort,
040b4a09341f574825386333398110f4db3e1e51vboxsync [in] DWORD dwOptions,
040b4a09341f574825386333398110f4db3e1e51vboxsync [in] BSTR bstrTargetNameOrIPAddress,
040b4a09341f574825386333398110f4db3e1e51vboxsync [in] ICS_TARGETTYPE eTargetType,
040b4a09341f574825386333398110f4db3e1e51vboxsync [out, retval] INetSharingPortMapping **ppMapping );
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [id(10)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT RemovePortMapping([in] INetSharingPortMapping *pMapping);
040b4a09341f574825386333398110f4db3e1e51vboxsync}
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync[
040b4a09341f574825386333398110f4db3e1e51vboxsync object,
040b4a09341f574825386333398110f4db3e1e51vboxsync uuid(c08956b4-1cd3-11d1-b1c5-00805fc1270e),
040b4a09341f574825386333398110f4db3e1e51vboxsync pointer_default(unique)
040b4a09341f574825386333398110f4db3e1e51vboxsync]
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface IEnumNetSharingPublicConnection : IUnknown
040b4a09341f574825386333398110f4db3e1e51vboxsync{
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Next(
040b4a09341f574825386333398110f4db3e1e51vboxsync [in] ULONG celt,
040b4a09341f574825386333398110f4db3e1e51vboxsync [out, size_is(celt), length_is(*pceltFetched)] VARIANT *rgVar,
040b4a09341f574825386333398110f4db3e1e51vboxsync [out] ULONG *pceltFetched);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Skip([in] ULONG celt);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Reset();
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Clone([out] IEnumNetSharingPublicConnection **ppenum);
040b4a09341f574825386333398110f4db3e1e51vboxsync}
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync[
040b4a09341f574825386333398110f4db3e1e51vboxsync object,
040b4a09341f574825386333398110f4db3e1e51vboxsync uuid(c08956b5-1cd3-11d1-b1c5-00805fc1270e),
040b4a09341f574825386333398110f4db3e1e51vboxsync pointer_default(unique)
040b4a09341f574825386333398110f4db3e1e51vboxsync]
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface IEnumNetSharingPrivateConnection : IUnknown
040b4a09341f574825386333398110f4db3e1e51vboxsync{
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Next(
040b4a09341f574825386333398110f4db3e1e51vboxsync [in] ULONG celt,
040b4a09341f574825386333398110f4db3e1e51vboxsync [out, size_is(celt), length_is(*pCeltFetched)] VARIANT *rgVar,
040b4a09341f574825386333398110f4db3e1e51vboxsync [out] ULONG *pCeltFetched);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Skip([in] ULONG celt);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Reset();
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Clone([out] IEnumNetSharingPrivateConnection **ppenum);
040b4a09341f574825386333398110f4db3e1e51vboxsync}
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync[
040b4a09341f574825386333398110f4db3e1e51vboxsync object,
040b4a09341f574825386333398110f4db3e1e51vboxsync uuid(f4277c95-ce5b-463d-8167-5662d9bcaa72),
040b4a09341f574825386333398110f4db3e1e51vboxsync oleautomation,
040b4a09341f574825386333398110f4db3e1e51vboxsync dual,
040b4a09341f574825386333398110f4db3e1e51vboxsync pointer_default(unique)
040b4a09341f574825386333398110f4db3e1e51vboxsync]
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface INetConnectionProps : IDispatch
040b4a09341f574825386333398110f4db3e1e51vboxsync{
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(1)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Guid([out, retval] BSTR *pbstrGuid);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(2)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Name([out, retval] BSTR *pbstrName);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(3)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT DeviceName([out, retval] BSTR *pbstrDeviceName);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(4)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Status([out, retval] NETCON_STATUS *pStatus);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(5)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT MediaType([out, retval] NETCON_MEDIATYPE *pMediaType);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(6)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Characteristics([out, retval] DWORD *pdwFlags);
040b4a09341f574825386333398110f4db3e1e51vboxsync}
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync[
040b4a09341f574825386333398110f4db3e1e51vboxsync object,
040b4a09341f574825386333398110f4db3e1e51vboxsync uuid(7d7a6355-f372-4971-a149-bfc927be762a),
040b4a09341f574825386333398110f4db3e1e51vboxsync oleautomation,
040b4a09341f574825386333398110f4db3e1e51vboxsync dual,
040b4a09341f574825386333398110f4db3e1e51vboxsync pointer_default(unique)
040b4a09341f574825386333398110f4db3e1e51vboxsync]
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface INetSharingPublicConnectionCollection : IDispatch
040b4a09341f574825386333398110f4db3e1e51vboxsync{
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(DISPID_NEWENUM), restricted]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT _NewEnum([out, retval] IUnknown **pVal);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(1)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Count([out, retval] long *pVal);
040b4a09341f574825386333398110f4db3e1e51vboxsync}
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync[
040b4a09341f574825386333398110f4db3e1e51vboxsync object,
040b4a09341f574825386333398110f4db3e1e51vboxsync uuid(33c4643c-7811-46fa-a89a-768597bd7223),
040b4a09341f574825386333398110f4db3e1e51vboxsync oleautomation,
040b4a09341f574825386333398110f4db3e1e51vboxsync dual,
040b4a09341f574825386333398110f4db3e1e51vboxsync pointer_default(unique)
040b4a09341f574825386333398110f4db3e1e51vboxsync ]
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface INetSharingEveryConnectionCollection : IDispatch
040b4a09341f574825386333398110f4db3e1e51vboxsync{
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(DISPID_NEWENUM), restricted]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT _NewEnum([out, retval] IUnknown **pVal);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(1)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Count([out, retval] long *pVal);
040b4a09341f574825386333398110f4db3e1e51vboxsync}
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync[
040b4a09341f574825386333398110f4db3e1e51vboxsync object,
040b4a09341f574825386333398110f4db3e1e51vboxsync uuid(38ae69e0-4409-402a-a2cb-e965c727f840),
040b4a09341f574825386333398110f4db3e1e51vboxsync oleautomation,
040b4a09341f574825386333398110f4db3e1e51vboxsync dual,
040b4a09341f574825386333398110f4db3e1e51vboxsync pointer_default(unique)
040b4a09341f574825386333398110f4db3e1e51vboxsync ]
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface INetSharingPrivateConnectionCollection : IDispatch
040b4a09341f574825386333398110f4db3e1e51vboxsync{
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(DISPID_NEWENUM), restricted]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT _NewEnum([out, retval] IUnknown **pVal);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(1)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Count([out, retval] long *pVal);
040b4a09341f574825386333398110f4db3e1e51vboxsync}
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync[
040b4a09341f574825386333398110f4db3e1e51vboxsync object,
040b4a09341f574825386333398110f4db3e1e51vboxsync uuid(c08956b7-1cd3-11d1-b1c5-00805fc1270e),
040b4a09341f574825386333398110f4db3e1e51vboxsync oleautomation,
040b4a09341f574825386333398110f4db3e1e51vboxsync dual,
040b4a09341f574825386333398110f4db3e1e51vboxsync pointer_default(unique)
040b4a09341f574825386333398110f4db3e1e51vboxsync]
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface INetSharingManager : IDispatch
040b4a09341f574825386333398110f4db3e1e51vboxsync{
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(1)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT SharingInstalled([out, retval] VARIANT_BOOL *pbInstalled);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(2)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT EnumPublicConnections(
040b4a09341f574825386333398110f4db3e1e51vboxsync [in] SHARINGCONNECTION_ENUM_FLAGS Flags,
040b4a09341f574825386333398110f4db3e1e51vboxsync [out, retval] INetSharingPublicConnectionCollection **ppColl);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(3)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT EnumPrivateConnections(
040b4a09341f574825386333398110f4db3e1e51vboxsync [in] SHARINGCONNECTION_ENUM_FLAGS Flags,
040b4a09341f574825386333398110f4db3e1e51vboxsync [out, retval] INetSharingPrivateConnectionCollection **ppColl);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(6)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT INetSharingConfigurationForINetConnection(
040b4a09341f574825386333398110f4db3e1e51vboxsync [in] INetConnection *pNetConnection,
040b4a09341f574825386333398110f4db3e1e51vboxsync [out, retval] INetSharingConfiguration **ppNetSharingConfiguration);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(7)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT EnumEveryConnection([out, retval] INetSharingEveryConnectionCollection **ppColl);
040b4a09341f574825386333398110f4db3e1e51vboxsync
040b4a09341f574825386333398110f4db3e1e51vboxsync [propget, id(8)]
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT NetConnectionProps(
040b4a09341f574825386333398110f4db3e1e51vboxsync [in] INetConnection *pNetConnection,
040b4a09341f574825386333398110f4db3e1e51vboxsync [out, retval] INetConnectionProps **ppProps);
040b4a09341f574825386333398110f4db3e1e51vboxsync}