diff -r 43e37759235e -r 51a74ef9ed63 Symbian3/SDK/Source/GUID-82499F0B-2791-59B6-9BAE-F9F87234FBF1.dita --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Symbian3/SDK/Source/GUID-82499F0B-2791-59B6-9BAE-F9F87234FBF1.dita Wed Mar 31 11:11:55 2010 +0100 @@ -0,0 +1,67 @@ + + + + + +Implementing +a NifMan Daemon TutorialThis topic describes the steps involved in implementing a NifMan +Daemon. +

Daemons are loaded when a connection is started that requires +network layer configuration. The ECom configuration daemon manager used for +a connection is specified in the SERVICE_CONFIG_DAEMON_MANAGER_NAME field +in the Comms Database Dial +Out ISP and GPRS Packet Service tables. The daemon server used for a connection +is specified in the SERVICE_CONFIG_DAEMON_NAME field in +the CommDb Dial Out ISP and GPRS Packet Service tables.

To implement a configuration daemon, you must write a Symbian platform +server for more information see Using +Client/Server.

The name of the server in CServer::Start() must +match the name used in the CommDb SERVICE_CONFIG_DAEMON_NAME field.

The +following ServiceL() implementation tests for these messages +types and calls functions:

void CEgConfigDaemonSession::ServiceL(const RMessage2& aMessage) + { + switch (aMessage.Function()) + { + case EConfigDaemonConfigure: + ConfigureL(aMessage); + break; + case EConfigDaemonDeregister: + DeregisterL(aMessage); + break; + case EConfigDaemonLinkLayerDown: + LinkLayerDownL(aMessage); + break; + case EConfigDaemonLinkLayerUp: + LinkLayerUpL(aMessage); + break; + case EConfigDaemonProgress: + ProgressL(aMessage); + break; + case EConfigDaemonIoctl: + IoctlL(aMessage); + break; + case EConfigDaemonCancel: + Cancel(aMessage); + break; + case EConfigDaemonCancelMask: + CancelMask(aMessage); + break; + default: + User::Leave(KErrNotSupported); + break; + } + }

For more information about the message types see What are the daemon message +types?

+
+What is Network +Interface Management (NifMan)? +Architecture + +Reference + +
\ No newline at end of file