netcon.idl revision 4b9d6701570cb98fd36e209314239d104ec584d3
040b4a09341f574825386333398110f4db3e1e51vboxsync * Copyright 2009 Jacek Caban for CodeWeavers
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 * 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 * 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
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.
040b4a09341f574825386333398110f4db3e1e51vboxsyncimport "oaidl.idl";
040b4a09341f574825386333398110f4db3e1e51vboxsyncimport "unknwn.idl";
040b4a09341f574825386333398110f4db3e1e51vboxsyncimport "wtypes.idl";
040b4a09341f574825386333398110f4db3e1e51vboxsync/* import "prsht.idl"; */
040b4a09341f574825386333398110f4db3e1e51vboxsynccpp_quote("DEFINE_GUID(CLSID_NetSharingManager,0x5c63c1ad,0x3956,0x4ff8,0x84,0x86,0x40,0x03,0x47,0x58,0x31,0x5b);")
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT GetProperties([out] NETCON_PROPERTIES **ppProps);
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT GetUiObjectClassId([out, ref] CLSID *pclsid);
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT IPProtocol([out, retval] UCHAR *pucIPProt);
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT TargetName([out, retval] BSTR *pbstrTargetName);
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT TargetIPAddress([out, retval] BSTR *pbstrTargetIPAddress);
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Enabled([out, retval] VARIANT_BOOL *pbool);
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Properties([out, retval] INetSharingPortMappingProps **ppNSPMP);
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface INetSharingPortMappingCollection : IDispatch
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT SharingEnabled([out, retval] VARIANT_BOOL *pbEnabled);
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT SharingConnectionType([out, retval] SHARINGCONNECTIONTYPE *pType);
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT EnableSharing([in] SHARINGCONNECTIONTYPE Type);
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT InternetFirewallEnabled([out, retval] VARIANT_BOOL *pbEnabled);
040b4a09341f574825386333398110f4db3e1e51vboxsync [out, retval] INetSharingPortMappingCollection **ppColl);
040b4a09341f574825386333398110f4db3e1e51vboxsync [out, retval] INetSharingPortMapping **ppMapping );
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT RemovePortMapping([in] INetSharingPortMapping *pMapping);
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface IEnumNetSharingPublicConnection : IUnknown
040b4a09341f574825386333398110f4db3e1e51vboxsync [out, size_is(celt), length_is(*pceltFetched)] VARIANT *rgVar,
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Clone([out] IEnumNetSharingPublicConnection **ppenum);
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface IEnumNetSharingPrivateConnection : IUnknown
040b4a09341f574825386333398110f4db3e1e51vboxsync [out, size_is(celt), length_is(*pCeltFetched)] VARIANT *rgVar,
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Clone([out] IEnumNetSharingPrivateConnection **ppenum);
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT DeviceName([out, retval] BSTR *pbstrDeviceName);
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Status([out, retval] NETCON_STATUS *pStatus);
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT MediaType([out, retval] NETCON_MEDIATYPE *pMediaType);
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT Characteristics([out, retval] DWORD *pdwFlags);
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface INetSharingPublicConnectionCollection : IDispatch
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface INetSharingEveryConnectionCollection : IDispatch
040b4a09341f574825386333398110f4db3e1e51vboxsyncinterface INetSharingPrivateConnectionCollection : IDispatch
040b4a09341f574825386333398110f4db3e1e51vboxsync HRESULT SharingInstalled([out, retval] VARIANT_BOOL *pbInstalled);
040b4a09341f574825386333398110f4db3e1e51vboxsync [out, retval] INetSharingPublicConnectionCollection **ppColl);
040b4a09341f574825386333398110f4db3e1e51vboxsync [out, retval] INetSharingPrivateConnectionCollection **ppColl);
040b4a09341f574825386333398110f4db3e1e51vboxsync [out, retval] INetSharingConfiguration **ppNetSharingConfiguration);