NATNetworkImpl.h revision 16b23ef3b4e140a2f20873bf8d524515f6618ea7
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync * VirtualBox COM class implementation
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync * Copyright (C) 2006-2011 Oracle Corporation
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync * available from http://www.virtualbox.org. This file is free software;
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync * you can redistribute it and/or modify it under the terms of the GNU
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync * General Public License (GPL) as published by the Free Software
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync * Foundation, in version 2 as it comes in the "COPYING" file of the
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
152b12e401b58b34fbdbf2a4510152b67884ee89vboxsyncclass NATNetworkServiceRunner: public NetworkServiceRunner
152b12e401b58b34fbdbf2a4510152b67884ee89vboxsync NATNetworkServiceRunner(): NetworkServiceRunner(NATSR_EXECUTABLE_NAME){}
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync VIRTUALBOXBASE_ADD_ERRORINFO_SUPPORT(NATNetwork, INATNetwork)
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync // INATNetwork::EventSource
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync STDMETHOD(COMGETTER(EventSource))(IEventSource **IEventSource);
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync // INATNetwork properties
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync STDMETHOD(COMGETTER(AdvertiseDefaultIPv6RouteEnabled))(BOOL *aEnabled);
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync STDMETHOD(COMSETTER(AdvertiseDefaultIPv6RouteEnabled))(BOOL aEnabled);
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync STDMETHOD(COMGETTER(NeedDhcpServer))(BOOL *aEnabled);
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync STDMETHOD(COMSETTER(NeedDhcpServer))(BOOL aEnabled);
c33cfc3b3717e118f6e786433bd3725c33f2b8f8vboxsync STDMETHOD(COMGETTER(LocalMappings))(ComSafeArrayOut(BSTR, aLocalMappings));
c33cfc3b3717e118f6e786433bd3725c33f2b8f8vboxsync STDMETHOD(AddLocalMapping)(IN_BSTR aHostId, LONG aOffset);
90ec75021ad8bca45729eedf9d3de4726381bb9dvboxsync STDMETHOD(COMGETTER(LoopbackIp6))(LONG *aLoopbackIp6);
90ec75021ad8bca45729eedf9d3de4726381bb9dvboxsync STDMETHOD(COMSETTER(LoopbackIp6))(LONG aLoopbackIp6);
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync STDMETHOD(COMGETTER(PortForwardRules4))(ComSafeArrayOut(BSTR, aPortForwardRules4));
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync STDMETHOD(COMGETTER(PortForwardRules6))(ComSafeArrayOut(BSTR, aPortForwardRules6));
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync STDMETHOD(RemovePortForwardRule)(BOOL aIsIpv6, IN_BSTR aPortForwardRuleName);
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync typedef std::map<Utf8Str, settings::NATRule> NATRuleMap;
6d73c66200a04223ae56a22ff221ec32193717a5vboxsync typedef NATRuleMap::const_iterator constNATRuleMapIterator;
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync void GetPortForwardRulesFromMap(ComSafeArrayOut(BSTR, aPortForwardRules), NATRuleMap& aRules);
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync /** weak VirtualBox parent */
75fb03f8c1ac60d0449d333b78ec1ef08fcc9868vboxsync#endif // ____H_H_NATNETWORKIMPL