NATEngineImpl.h revision b4bcdbd7ac35c938e6f71a6403fe9f3ebf106a07
af062818b47340eef15700d2f0211576ba3506eevboxsync * VirtualBox COM class implementation
af062818b47340eef15700d2f0211576ba3506eevboxsync * Copyright (C) 2006-2009 Oracle Corporation
af062818b47340eef15700d2f0211576ba3506eevboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
af062818b47340eef15700d2f0211576ba3506eevboxsync * available from http://www.virtualbox.org. This file is free software;
af062818b47340eef15700d2f0211576ba3506eevboxsync * you can redistribute it and/or modify it under the terms of the GNU
af062818b47340eef15700d2f0211576ba3506eevboxsync * General Public License (GPL) as published by the Free Software
af062818b47340eef15700d2f0211576ba3506eevboxsync * Foundation, in version 2 as it comes in the "COPYING" file of the
af062818b47340eef15700d2f0211576ba3506eevboxsync * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
af062818b47340eef15700d2f0211576ba3506eevboxsync * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
af062818b47340eef15700d2f0211576ba3506eevboxsync typedef std::map<Utf8Str, settings::NATRule> NATRuleMap;
af062818b47340eef15700d2f0211576ba3506eevboxsync /* TFTP service */
af062818b47340eef15700d2f0211576ba3506eevboxsync /* DNS service */
af062818b47340eef15700d2f0211576ba3506eevboxsync /* Alias service */
af062818b47340eef15700d2f0211576ba3506eevboxsync VIRTUALBOXBASE_ADD_ERRORINFO_SUPPORT(NATEngine, INATEngine)
af062818b47340eef15700d2f0211576ba3506eevboxsync HRESULT init(Machine *aParent, INetworkAdapter *aAdapter);
af062818b47340eef15700d2f0211576ba3506eevboxsync HRESULT init(Machine *aParent, INetworkAdapter *aAdapter, NATEngine *aThat);
af062818b47340eef15700d2f0211576ba3506eevboxsync HRESULT initCopy(Machine *aParent, INetworkAdapter *aAdapter, NATEngine *aThat);
af062818b47340eef15700d2f0211576ba3506eevboxsync /* TFTP attributes */
af062818b47340eef15700d2f0211576ba3506eevboxsync STDMETHOD(COMSETTER(TftpPrefix)) (IN_BSTR aTftpPrefix);
af062818b47340eef15700d2f0211576ba3506eevboxsync STDMETHOD(COMGETTER(TftpPrefix)) (BSTR *aTftpPrefix);
af062818b47340eef15700d2f0211576ba3506eevboxsync STDMETHOD(COMSETTER(TftpBootFile)) (IN_BSTR aTftpBootFile);
af062818b47340eef15700d2f0211576ba3506eevboxsync STDMETHOD(COMGETTER(TftpBootFile)) (BSTR *aTftpBootFile);
af062818b47340eef15700d2f0211576ba3506eevboxsync STDMETHOD(COMSETTER(TftpNextServer)) (IN_BSTR aTftpNextServer);
af062818b47340eef15700d2f0211576ba3506eevboxsync STDMETHOD(COMGETTER(TftpNextServer)) (BSTR *aTftpNextServer);
af062818b47340eef15700d2f0211576ba3506eevboxsync /* Alias attributes */
af062818b47340eef15700d2f0211576ba3506eevboxsync STDMETHOD(COMGETTER(AliasMode)) (ULONG *aAliasLog);
af062818b47340eef15700d2f0211576ba3506eevboxsync /* DNS attributes */
af062818b47340eef15700d2f0211576ba3506eevboxsync STDMETHOD(COMSETTER(DnsPassDomain)) (BOOL aDnsPassDomain);
af062818b47340eef15700d2f0211576ba3506eevboxsync STDMETHOD(COMGETTER(DnsPassDomain)) (BOOL *aDnsPassDomain);
af062818b47340eef15700d2f0211576ba3506eevboxsync STDMETHOD(COMGETTER(DnsUseHostResolver)) (BOOL *aDnsUseHostResolver);
af062818b47340eef15700d2f0211576ba3506eevboxsync STDMETHOD(COMSETTER(DnsUseHostResolver)) (BOOL aDnsUseHostResolver);
af062818b47340eef15700d2f0211576ba3506eevboxsync STDMETHOD(SetNetworkSettings)(ULONG aMtu, ULONG aSockSnd, ULONG aSockRcv, ULONG aTcpWndSnd, ULONG aTcpWndRcv);
af062818b47340eef15700d2f0211576ba3506eevboxsync STDMETHOD(GetNetworkSettings)(ULONG *aMtu, ULONG *aSockSnd, ULONG *aSockRcv, ULONG *aTcpWndSnd, ULONG *aTcpWndRcv);
af062818b47340eef15700d2f0211576ba3506eevboxsync STDMETHOD(COMGETTER(Redirects)) (ComSafeArrayOut (BSTR, aNatRules));