VirtualBox

Ignore:
Timestamp:
Apr 27, 2010 6:36:48 AM (15 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
60675
Message:

NAT: introduces management routines of NAT libalias core. (see xTracker/#4843 for details)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/NATEngineImpl.cpp

    r27976 r28787  
    331331    mData->mDnsProxy = data.fDnsProxy;
    332332    mData->mDnsUseHostResolver = data.fDnsUseHostResolver;
     333    /* Alias */
     334    mData->mAliasMode |= (data.fAliasLog ? NATAliasMode_AliasLog : 0);
     335    mData->mAliasMode |= (data.fAliasProxyOnly ? NATAliasMode_AliasProxyOnly : 0);
     336    mData->mAliasMode = (data.fAliasUseSamePorts ? NATAliasMode_AliasUseSamePorts : 0);
    333337    /* port forwarding */
    334338    mNATRules.clear();
     
    365369    data.fDnsProxy = mData->mDnsProxy;
    366370    data.fDnsUseHostResolver = mData->mDnsUseHostResolver;
     371    /* Alias */
     372    data.fAliasLog = mData->mAliasMode & NATAliasMode_AliasLog;
     373    data.fAliasProxyOnly = mData->mAliasMode & NATAliasMode_AliasProxyOnly;
     374    data.fAliasUseSamePorts = mData->mAliasMode & NATAliasMode_AliasUseSamePorts;
    367375
    368376    for (NATRuleMap::iterator it = mNATRules.begin();
     
    604612    return S_OK;
    605613}
     614
     615STDMETHODIMP NATEngine::COMSETTER(AliasMode) (ULONG aAliasMode)
     616{
     617    AutoCaller autoCaller(this);
     618    AssertComRCReturnRC(autoCaller.rc());
     619
     620    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
     621
     622    if (mData->mAliasMode != aAliasMode)
     623    {
     624        mData.backup();
     625        mData->mAliasMode = aAliasMode;
     626        mParent->setModified(Machine::IsModified_NetworkAdapters);
     627        m_fModified = true;
     628    }
     629    return S_OK;
     630}
     631
     632STDMETHODIMP NATEngine::COMGETTER(AliasMode) (ULONG *aAliasMode)
     633{
     634    AutoCaller autoCaller(this);
     635    AssertComRCReturnRC (autoCaller.rc());
     636    AutoWriteLock alock(this COMMA_LOCKVAL_SRC_POS);
     637    *aAliasMode = mData->mAliasMode;
     638    return S_OK;
     639}
     640
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette