williamr@4: // Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies). williamr@4: // All rights reserved. williamr@4: // This component and the accompanying materials are made available williamr@4: // under the terms of "Eclipse Public License v1.0" williamr@4: // which accompanies this distribution, and is available williamr@4: // at the URL "http://www.eclipse.org/legal/epl-v10.html". williamr@4: // williamr@4: // Initial Contributors: williamr@4: // Nokia Corporation - initial contribution. williamr@4: // williamr@4: // Contributors: williamr@4: // williamr@4: // Description: williamr@4: // Interface Manager API williamr@4: // williamr@4: // williamr@4: williamr@4: /** williamr@4: @file nifman_internal.h williamr@4: */ williamr@4: williamr@4: williamr@4: #if !defined(__NIFMAN_INTERNAL_H__) williamr@4: #define __NIFMAN_INTERNAL_H__ williamr@4: williamr@4: #include williamr@4: #ifdef SYMBIAN_ENABLE_SPLIT_HEADERS williamr@4: #include williamr@4: #include williamr@4: #endif williamr@4: williamr@4: williamr@4: /** williamr@4: Static internal API class williamr@4: @internalComponent williamr@4: */ williamr@4: enum TNifSocketState { ENifBuffers2048=-4, ENifBuffers1024, ENifBuffers512, williamr@4: ENifSocketNull=-1, williamr@4: ENifSocketCreated=0, ENifSocketOpen=3, ENifSocketConnected=4, williamr@4: ENifSocketError=9 }; williamr@4: williamr@4: class MNifIfUser; williamr@4: class MNifIfNotify; williamr@4: class CNifIfBase; williamr@4: class CNifAgentBase; williamr@4: class CSockSession; williamr@4: class CConnectionProvdBase; williamr@4: williamr@4: /** williamr@4: @internalTechnology williamr@4: */ williamr@4: class MConnectionNotify; williamr@4: class CConnectionProvdBase; williamr@4: class Nif williamr@4: { williamr@4: public: williamr@4: /** Network protocol support */ williamr@4: IMPORT_C static void BindL(MNifIfUser& aUser, TAny* aId, TDes& aResult, const TDesC& aName=TPtrC(0,0)); williamr@4: IMPORT_C static void NetworkLayerClosed(MNifIfUser& aUser); williamr@4: IMPORT_C static void StartL(TDes& aResult, const TDesC& aName=TPtrC()); williamr@4: IMPORT_C static void Stop(const TDesC& aName=TPtrC()); williamr@4: IMPORT_C static CNifIfBase* CreateInterfaceL(const TDesC& aName, MNifIfNotify* aNotify); williamr@4: IMPORT_C static CNifAgentBase* CreateAgentL(const TDesC& aAgentName, const TBool aNewInstance = EFalse); williamr@4: IMPORT_C static void CheckInstalledMBufManagerL(); williamr@4: IMPORT_C static CProtocolBase* IsProtocolLoaded(const TDesC& aName); williamr@4: IMPORT_C static void CheckInstalledL(); williamr@4: IMPORT_C static TInt SetSocketState(TNifSocketState aState, CServProviderBase* aProvd); williamr@4: IMPORT_C static void ProgressL(TNifProgress& aProgress, const TDesC& aName=TPtrC()); williamr@4: IMPORT_C static void Stop(TAny* aId, CNifIfBase* aIf=0); williamr@4: IMPORT_C static void ProgressL(TNifProgress& aProgress, TAny* aId, CNifIfBase* aIf=0); williamr@4: IMPORT_C static CConnectionProvdBase* NewConnectionL(MConnectionNotify* aConnection, TUint aId); williamr@4: /** deprecated function */ williamr@4: IMPORT_C static CNifIfBase* CreateInterfaceL(const TDesC& aName); williamr@4: }; williamr@4: williamr@4: #ifdef _DEBUG williamr@4: /** williamr@4: Debug-only option level used to pass test-only option names onto PPP. williamr@4: @internalTechnology williamr@4: */ williamr@4: const TUint KCOLLinkLayerTestLevel = 325; williamr@4: #endif williamr@4: williamr@4: /** williamr@4: @internalTechnology williamr@4: @released 9.1 williamr@4: */ williamr@4: const TUint KNifSessionSetConnectionAttempt = KConnInternalOptionBit|8; williamr@4: williamr@4: /** williamr@4: @internalTechnology williamr@4: @released 9.1 williamr@4: */ williamr@4: const TUint KNifSessionGetConnectionAttempt = KConnInternalOptionBit|9; williamr@4: williamr@4: /** williamr@4: @internalTechnology williamr@4: @released Argus williamr@4: */ williamr@4: const TUint KNifSessionSetConnectionProvider = KConnInternalOptionBit|10; williamr@4: williamr@4: /** williamr@4: @internalTechnology williamr@4: @released williamr@4: @ref RConnection::Ioctl williamr@4: */ williamr@4: const TUint KConnSetDhcpRawOptionData = KConnWriteUserDataBit|KConnReadUserDataBit|103; williamr@4: williamr@4: #endif // __NIFMAN_H__ williamr@4: williamr@4: williamr@4: