Changeset 49210 in vbox for trunk/src/VBox/NetworkServices
- Timestamp:
- Oct 21, 2013 12:38:11 PM (11 years ago)
- svn:sync-xref-src-repo-rev:
- 90096
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/NetworkServices/NAT/VBoxNetLwipNAT.cpp
r49200 r49210 186 186 /* Our NAT network descriptor in Main */ 187 187 ComPtr<INATNetwork> m_net; 188 ComPtr<NATNetworkListenerImpl> m_listener; 188 ComObjPtr<NATNetworkListenerImpl> m_listener; 189 190 ComPtr<IHost> m_host; 191 ComObjPtr<NATNetworkListenerImpl> m_vboxListener; 192 189 193 STDMETHOD(HandleEvent)(VBoxEventType_T aEventType, IEvent *pEvent); 190 194 … … 879 883 AssertComRCReturn(hrc, VERR_NOT_FOUND); 880 884 881 ComPtr<IEventSource> pES; 882 hrc = m_net->COMGETTER(EventSource)(pES.asOutParam()); 885 hrc = m_listener.createObject(); 886 AssertComRCReturn(hrc, VERR_INTERNAL_ERROR); 887 888 hrc = m_listener->init(new NATNetworkListener(), this); 889 AssertComRCReturn(hrc, VERR_INTERNAL_ERROR); 890 891 ComPtr<IEventSource> esNet; 892 hrc = m_net->COMGETTER(EventSource)(esNet.asOutParam()); 883 893 AssertComRC(hrc); 884 894 885 ComObjPtr<NATNetworkListenerImpl> listener; 886 hrc = listener.createObject(); 895 com::SafeArray<VBoxEventType_T> aNetEvents; 896 aNetEvents.push_back(VBoxEventType_OnNATNetworkPortForward); 897 aNetEvents.push_back(VBoxEventType_OnNATNetworkSetting); 898 hrc = esNet->RegisterListener(m_listener, ComSafeArrayAsInParam(aNetEvents), true); 887 899 AssertComRCReturn(hrc, VERR_INTERNAL_ERROR); 888 900 889 hrc = listener->init(new NATNetworkListener(), this); 901 902 // resolver changes are reported on vbox but are retrieved from 903 // host so stash a pointer for future lookups 904 hrc = virtualbox->COMGETTER(Host)(m_host.asOutParam()); 890 905 AssertComRCReturn(hrc, VERR_INTERNAL_ERROR); 891 906 892 com::SafeArray<VBoxEventType_T> events; 893 events.push_back(VBoxEventType_OnNATNetworkPortForward); 894 events.push_back(VBoxEventType_OnNATNetworkSetting); 895 896 hrc = pES->RegisterListener(listener, ComSafeArrayAsInParam(events), true); 907 hrc = m_vboxListener.createObject(); 897 908 AssertComRCReturn(hrc, VERR_INTERNAL_ERROR); 898 909 899 m_listener = listener; 910 hrc = m_vboxListener->init(new NATNetworkListener(), this); 911 AssertComRCReturn(hrc, VERR_INTERNAL_ERROR); 912 913 ComPtr<IEventSource> esVBox; 914 hrc = virtualbox->COMGETTER(EventSource)(esVBox.asOutParam()); 915 AssertComRC(hrc); 916 917 com::SafeArray<VBoxEventType_T> aVBoxEvents; 918 aVBoxEvents.push_back(VBoxEventType_OnHostNameResolutionConfigurationChange); 919 hrc = esVBox->RegisterListener(m_vboxListener, ComSafeArrayAsInParam(aVBoxEvents), true); 920 AssertComRCReturn(hrc, VERR_INTERNAL_ERROR); 900 921 901 922
Note:
See TracChangeset
for help on using the changeset viewer.