Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1997.
//
// File: P P T P . C P P
//
// Contents: Implementation of PPPOE configuration object.
//
// Notes:
//
// Author: shaunco 10 Mar 1997
//
//----------------------------------------------------------------------------
#include "pch.h"
#pragma hdrstop
#include "ndiswan.h"
#include "rasobj.h"
extern const WCHAR c_szInfId_MS_PppoeMiniport[];
CPppoe::CPppoe () : CRasBindObject () { m_pnccMe = NULL; m_fSaveAfData = FALSE; }
CPppoe::~CPppoe () { ReleaseObj (m_pnccMe); }
//+---------------------------------------------------------------------------
// INetCfgComponentControl
//
STDMETHODIMP CPppoe::Initialize ( INetCfgComponent* pncc, INetCfg* pnc, BOOL fInstalling) { Validate_INetCfgNotify_Initialize (pncc, pnc, fInstalling);
// Hold on to our the component representing us and our host
// INetCfg object.
//
AddRefObj (m_pnccMe = pncc); AddRefObj (m_pnc = pnc);
return S_OK; }
STDMETHODIMP CPppoe::Validate () { return S_OK; }
STDMETHODIMP CPppoe::CancelChanges () { return S_OK; }
STDMETHODIMP CPppoe::ApplyRegistryChanges () { if (m_fSaveAfData) { m_AfData.SaveToRegistry (m_pnc); m_fSaveAfData = FALSE; }
return S_OK; }
//+---------------------------------------------------------------------------
// INetCfgComponentSetup
//
STDMETHODIMP CPppoe::ReadAnswerFile ( PCWSTR pszAnswerFile, PCWSTR pszAnswerSection) { Validate_INetCfgNotify_ReadAnswerFile (pszAnswerFile, pszAnswerSection);
// Read data from the answer file.
// Don't let this affect the HRESULT we return.
//
if (SUCCEEDED(m_AfData.HrOpenAndRead (pszAnswerFile, pszAnswerSection))) { m_fSaveAfData = TRUE; }
return S_OK; }
STDMETHODIMP CPppoe::Install (DWORD dwSetupFlags) { HRESULT hr;
Validate_INetCfgNotify_Install (dwSetupFlags);
// Install the PPPOE miniport driver.
//
hr = HrEnsureZeroOrOneAdapter (m_pnc, c_szInfId_MS_PppoeMiniport, ARA_ADD);
TraceError ("CPppoe::Install", hr); return hr; }
STDMETHODIMP CPppoe::Removing () { HRESULT hr;
// Remove the PPPOE miniport driver.
//
hr = HrEnsureZeroOrOneAdapter (m_pnc, c_szInfId_MS_PppoeMiniport, ARA_REMOVE);
TraceError ("CPppoe::Removing", hr); return hr; }
STDMETHODIMP CPppoe::Upgrade ( DWORD dwSetupFlags, DWORD dwUpgradeFromBuildNo) { return S_FALSE; }
|