# HG changeset patch
# User Dominic Pinkman Deleting a trigger Handling a trigger firing event. For detailed information about the Location Triggering API, see the Location
+Triggering API Specification document.
Use
Example code
For +examples, see:
This example application shows, using a P.I.P.S. (P.I.P.S. Is POSIX on
-Symbian OS) program, the use of the LibpThread library to demonstrate simple
-multi-threading and synchronisation.
The purpose is to create a basic multithreading example showing the usage of the LibpThread APIs. This example also shows how multi-threading is used to achieve concurrency in tasks and sharing of resources.
-Click
+ Click
on the following link to download the example: Click: The following sections provide more
-information about the steps that the example performs. Thread
-Synchronisation The example creates three threads named ThreadOne,
-ThreadTwo and ThreadThree. The threads write "One", "Two" and "Three" five
-times in a text file. The text file, located in The
+following sections provide more information about the steps that the example
+performs. Thread Synchronisation The example creates
+three threads named ThreadOne, ThreadTwo and ThreadThree. The threads write
+"One", "Two" and "Three" five times in a text file. The text file, located
+in The The
+ The The
example builds an executable called To run the example, start Because Note, both leaving and non-leaving versions of
the The example shows how a class implemented
+ The example shows how a class implemented
in a statically linked DLL is used. The DLL is built by Click on the following link to download
-the example: Click on the following link to
-download additional files: Click Click It may be in the directory in which
-you installed Symbian platform, or it may be in Click on the following link
+to download the example: Click on the following link to
+download additional files: Click Click The example may be in the directory
+in which you installed the Symbian platform, or it may be in The following topics describe the use cases based on which you can write
-Standard C++ code on Symbian platform: Note: For
more information about the leave-idiom on Symbian C++, see the Lifetimes
-in Symbian platform topic under the The error code Alternatively,
@@ -176,7 +176,7 @@
The example application shows how you to code security policies.
It also shows you the constants and classes that you must define to use the
policy server framework. This example demonstrates the following
-classes: This
+example demonstrates the following classes: The Click on the following link to download
-the example: Click: Click
+on the following link to download the example: Click: An
object of the The A Standard C++ environment with IOStream and STL (Standard Template Library)
libraries enables you to develop or port Standard C++ applications or libraries
-quickly and easily on Symbian platform. The topics in this guide provide a
-brief overview of Standard C++ support on Symbian platform and also describe
-how to develop applications or libraries based on Standard C++. This topic describes the Standard C++ runtime features supported on Symbian^3. Building your application
or library using the STD target type. Using the Example The
following example code illustrates how to use the global You
+new when you write Standard C++ code on the Symbian platform and
+your target type is a non-STD target type, for example, You
must add the The
-new_handler() function of Standard C++ is fully supported on Symbian platform
-(the global The following code illustrates how to set and invoke a The The following code
+illustrates how to set and invoke a Here
-are some key facts about STL support on Symbian platform: The Standard C++ implementation
-on Symbian platform is based on STLPort version 5.1.4.
diff -r 25a17d01db0c -r ebc84c812384 Symbian3/SDK/Source/GUID-1ACD01D1-2055-581A-9478-2C0D7D1CF9E6.dita
--- a/Symbian3/SDK/Source/GUID-1ACD01D1-2055-581A-9478-2C0D7D1CF9E6.dita Fri Jan 22 18:26:19 2010 +0000
+++ b/Symbian3/SDK/Source/GUID-1ACD01D1-2055-581A-9478-2C0D7D1CF9E6.dita Thu Mar 11 15:24:26 2010 +0000
@@ -9,10 +9,10 @@
-->
-
+
diff -r 25a17d01db0c -r ebc84c812384 Symbian3/SDK/Source/GUID-24EFD1EC-333C-537C-89FF-A77627D962C3.dita
--- a/Symbian3/SDK/Source/GUID-24EFD1EC-333C-537C-89FF-A77627D962C3.dita Fri Jan 22 18:26:19 2010 +0000
+++ b/Symbian3/SDK/Source/GUID-24EFD1EC-333C-537C-89FF-A77627D962C3.dita Thu Mar 11 15:24:26 2010 +0000
@@ -12,8 +12,8 @@
+Standard C++ specification on the Symbian platform by either:
+are some key facts about STL support on the Symbian platform:
The Standard C++ header
files are available in the
The Standard C++ library
diff -r 25a17d01db0c -r ebc84c812384 Symbian3/SDK/Source/GUID-30382EFD-90D5-570C-A6CD-19D34360F329.dita
--- a/Symbian3/SDK/Source/GUID-30382EFD-90D5-570C-A6CD-19D34360F329.dita Fri Jan 22 18:26:19 2010 +0000
+++ b/Symbian3/SDK/Source/GUID-30382EFD-90D5-570C-A6CD-19D34360F329.dita Thu Mar 11 15:24:26 2010 +0000
@@ -12,11 +12,11 @@
Click on the following link to download
+ Click on the following link to download
the example: Click: The source code for this example application
-can be found in the directory: It
-may be in the directory in which you installed Symbian platform, or it may
-be in The source code for this example
+application can be found in the directory: This
+source code may be in the directory in which you installed the Symbian platform,
+or it may be in the Launch the emulator: Click on OS Security provides the fundamental services to make protocols and services
-in Symbian platform secure. It provides frameworks and interfaces that are
-required to fulfill the demands of Symbian OS Platform Security Architecture.
-It includes collections of components that have to be modified or redesigned
-to support Platform Security. This example application shows, using a P.I.P.S. (P.I.P.S. Is POSIX on
-Symbian platform) program, the restrictions on file access that are imposed
+the Symbian platform) program, the restrictions on file access that are imposed
by the Symbian platform Security model. It shows that programs can access their own directories, but cannot, without
-platform security capabilities not available to ordinary programs, access
-the directories of other programs, or the system binary directory It shows that programs can access their own directories, but
+cannot, without platform security capabilities not available to ordinary programs,
+access the directories of other programs, or the system binary directory This example defines an executable file with no platform security capabilities.
The program first creates its own secure directory that it can write to and
read from. It then attempts to use a file in a private directory of another
program, and then in Click on the following link to download
-the example: Click: The following sections provide more
-information about the steps that the example performs. Create
-a secure directory The example creates an empty secure directory
-for the program by using the This
+ Click
+on the following link to download the example: Click: The
+following sections provide more information about the steps that the example
+performs. Create a secure directory The example creates
+an empty secure directory for the program by using the This
empty secure directory is created in Write and read a file in the private directory The
-example writes and reads a file in the secure directory using the Write and read a file in the private
-directory of another program The example attempts to write and
-read a file in the secure directory of another program. The Write and read
+a file in the private directory The example writes and reads
+a file in the secure directory using the Write and read a file in the private directory
+of another program The example attempts to write and read a file
+in the secure directory of another program. The Write
and read a file in the sys/bin directory The example attempts
@@ -43,12 +44,12 @@
where program binaries are stored. Again, the The The
-example builds an executable called To run the example, start The The example builds an executable
+called To
+run the example, start Click on the following link to download
+ Click on the following link to download
the example: Click: GlassTerm is a terminal application
+ GlassTerm is a terminal application
with configurable handshaking that illustrates the use of the Serial Communications
API. The source code for this example application
-can be found in the directory: It
-may be in the directory in which you installed Symbian OS, or it may be in The source code for this example application
+can be found in the directory: The
+source code may be in the directory in which you installed the Symbian platform,
+or it may be in Run the executable Executables
for the emulator targets It sends and receives at 19200 baud, 8 data bits, no parity, 1 stop
bit. In order to see the application working, you must make a suitable
-serial port connection. A simple way is to connect a PC and a Symbian OS phone,
+serial port connection. A simple way is to connect a PC and a Symbian device,
and run the application on both machines simultaneously. (Before doing this,
make sure to close down any other applications using the serial port on the
-PC, and set the phone's The
-application establishes a session with the SendAs server, sets a message entry,
-creates a message, sets its body text, adds a recipient, sends the message
-and closes the session. The sequence of events is detailed in the following
-list:
+
+
+
+
+application establishes a session with the SendAs server, sets
+a message entry, creates a message, sets its body text, adds a recipient,
+sends the message and closes the session. The sequence of events is detailed
+in the following list:
Create a session with
the SendAs server using
Set the message entry @@ -64,9 +64,9 @@ is used to end the session with SendAs server.
Click
on the following link to download the example:
Click:
The SendAs v2 example application
+ The SendAs v2 example application
uses the following classes: The The The SendAs example builds an executable
called Note: This example is designed to work with Techview and there
is no guarantee that it will work on other interfaces Click on the following link to download
-the example: Click: The
-files reproduced here are the main files contained in the examples directory.
-Some extra files may be needed to run the examples, and these will be found
-in the appropriate examples directory. The Click on the following link to download
+the example: Click: The files reproduced
+here are the main files contained in the examples directory. Some extra files
+may be needed to run the examples, and these will be found in the appropriate
+examples directory. The Note
that the After
the service entry is created or changed, an automatic refresh will be triggered. The following MTM-specific
+ The following MTM-specific
operations are accepted: Refresh: this command
refreshes the currently highlighted service entry. It calls the MTM-specific
diff -r 25a17d01db0c -r ebc84c812384 Symbian3/SDK/Source/GUID-43080A86-72D3-5422-953E-A5EF79961D7B.dita
--- a/Symbian3/SDK/Source/GUID-43080A86-72D3-5422-953E-A5EF79961D7B.dita Fri Jan 22 18:26:19 2010 +0000
+++ b/Symbian3/SDK/Source/GUID-43080A86-72D3-5422-953E-A5EF79961D7B.dita Thu Mar 11 15:24:26 2010 +0000
@@ -11,7 +11,7 @@
PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
Policy Evaluators are ECOM plug-ins.
+ Policy Evaluators are ECOM plug-ins.
They allow security decisions to be specific to the data on which the service
acts instead of simply granting full access to the service, for example "Allow
application X to send SMS messages to 01234567". This is supported through
@@ -39,7 +39,7 @@
on a usage threshold or simply as additional confirmation if the user selected
"Never". This is supported via the force prompt functionality. Writing policy evaluator includes the
+ Writing policy evaluator includes the
following: Generating fingerprints Forcing prompts A policy evaluator
+ A policy evaluator
can be overwritten or eclipsed without restarting the UPS, if it is delivered
through an appropriately signed upgrade. The ECOM plug-in will
@@ -194,20 +194,8 @@
the UPS that the plug-ins may have changed whenever Software Install modifies The following code shows
-an example of a full implementation of the policy evaluator file: The following code shows
+an example of a full implementation of the policy evaluator file: The
-P.I.P.S. libraries included in Symbian platform are covered by the following
-copyright notices: Jean-loup Gailly Mark Adler jloup@gzip.org madler@alumni.caltech.edu Copyright
(c) 2006-2010 Nokia Corporation and/or its subsidiary(-ies). All rights
-reserved. This component and the accompanying materials are made available
-under the terms of the License "Symbian Foundation License v1.0" which accompanies
-this distribution, and is available at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html". This component and the accompanying materials are made available under the terms of the License
+"Eclipse Public License v1.0" which accompanies this distribution,
+and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". Testing of communications software can be done using the Symbian
-OS console shell interface rather than a GUI interface. The console shell
-interface has advantages when testing since the console allows software to
-be tested in isolation. When testing with a GUI interface the testing can
-be difficult if other software in the GUI is attempting to access resources.
-If the device or the emulator is started with just the console, then only
-the kernel and file system are running. The tester can then load the software
-required for the test and ensure that no other software is using any resources.
-This avoids problems of other software interrupting the CPU or using and releasing
-memory or other hardware while a test is running. Any test applications
-that have not been launched by the GUI should
- explicitly load the correct physical and logical device drivers. In most
-cases the bootloader will load the physical device driver. It is safe to load
-a
-device driver which has already been loaded, since the API will return
- Testing of communications software can be done using the Symbian platform
+console shell interface rather than a GUI interface. The console shell interface
+has advantages when testing since the console allows software to be tested
+in isolation. When testing with a GUI interface the testing can be difficult
+if other software in the GUI is attempting to access resources. If the device
+or the emulator is started with just the console, then only the kernel and
+file system are running. The tester can then load the software required for
+the test and ensure that no other software is using any resources. This avoids
+problems of other software interrupting the CPU or using and releasing memory
+or other hardware while a test is running. Any test applications that
+have not been launched by the GUI should explicitly load the correct physical
+and logical device drivers. In most cases the bootloader will load the physical
+device driver. It is safe to load a device driver which has already been loaded,
+since the API will return This example code demonstrates RTP
+ This example code demonstrates RTP
packet streaming. It uses Click
on the following link to download the example: Click Opens an RTP session using the pre-connected socket and initialises new send
+ Opens an RTP session using the pre-connected socket and initialises new send
sources on the RTP session. Sends the RTP packet. This does the following: Sends the RTP packet. This does the following: gets a new RTP packet
to send from the send source sets the RTP timestamp
@@ -37,19 +37,19 @@
closes the source file. When an RTP packet with a new receive source arrives, this callback function
+ When an RTP packet with a new receive source arrives, this callback function
is called, which registers the packet. This can be used for different types
of RTP packets such as APP, BYE, SDES, SR and RR. Whenever an RTP packet arrives, this callback function is called. The
function retrieves the payload from the packet received and writes it to the
target file. The This
+ The This
is a console application, so does not have a GUI. It builds an executable
called The underlying implementation of sockets on Symbian platform
-imposes some restrictions on the socket options available in P.I.P.S. and
-has also resulted in some new non-standard options to be created. The
+options The underlying implementation of sockets on the Symbian
+platform imposes some restrictions on the socket options available in P.I.P.S.
+and has also resulted in some new non-standard options to be created. The
introduction of multi-homing (single link, multiple IP addresses) on Symbian
phones and the various methods of connecting to networks, such as Wi-Fi and
3G, with their varying degrees of cost to the user have made it important
@@ -252,27 +252,27 @@
return Sock;
} Symbian platform does not have any support for long doubles
-so any P.I.P.S. programs which call long double versions of APIs will actually
-invoke the double version of the API. Symbian platform supports the
-use of a hardware floating point co-processor, however not all phones incorporate
-an FPU (Floating Point Unit) and rely on software emulation of floating point
-operations. Phones and computers equipped with an FPU provide faster and more
-accurate floating point operations. Symbian platform does not support
-complex numbers so the P.I.P.S. libraries are not able to offer the POSIX
-complex number APIs. Note: The mathematical functions are
-included in the The Symbian platform does not have any support for long
+doubles so any P.I.P.S. programs which call long double versions of APIs will
+actually invoke the double version of the API. The Symbian platform
+supports the use of a hardware floating point co-processor, however not all
+phones incorporate an FPU (Floating Point Unit) and rely on software emulation
+of floating point operations. Phones and computers equipped with an FPU provide
+faster and more accurate floating point operations. The Symbian platform
+does not support complex numbers so the P.I.P.S. libraries are not able to
+offer the POSIX complex number APIs. Note: The mathematical
+functions are included in the It is important that Symbian platform error codes do
-not reach any ported application code. P.I.P.S. logically maps the native
+and cleanup It is important that the Symbian platform error codes
+do not reach any ported application code. P.I.P.S. logically maps the native
OS error codes with the corresponding POSIX Mapping
-P.I.P.S. error codes to Symbian platform error codes Porting your
-application to Symbian platform requires 'translating' Symbian platform error
-codes to POSIX error codes. Occasionally
+P.I.P.S. error codes to the Symbian platform error codes Porting
+your application to the Symbian platform requires 'translating' the Symbian
+platform error codes to POSIX error codes. Occasionally
errors may be generated by the underlying Symbian platform that cannot be
translated to POSIX error codes, in which case the error variable The
@@ -653,7 +653,7 @@
/** Symbian platform phones do not have a command line shell
+shell The Symbian platform phones do not have a command line shell
as standard. P.I.P.S. does however support the Standard C++ states that the Symbian
+Rule (ODR) must be maintained within a program. The Symbian
platform can neither check (without significant modifications) that the ODR
is violated nor use the technique called symbol pre-emption to ensure that
the ODR is enforced. Therefore, you must take care and must not assume
diff -r 25a17d01db0c -r ebc84c812384 Symbian3/SDK/Source/GUID-66C1493D-5B85-558A-9A39-454E6EBA307B.dita
--- a/Symbian3/SDK/Source/GUID-66C1493D-5B85-558A-9A39-454E6EBA307B.dita Fri Jan 22 18:26:19 2010 +0000
+++ b/Symbian3/SDK/Source/GUID-66C1493D-5B85-558A-9A39-454E6EBA307B.dita Thu Mar 11 15:24:26 2010 +0000
@@ -10,7 +10,7 @@
The There might be a considerable
amount of latency when you send or receive signals. Signals can be sent between P.I.P.S.
+ Signals can be sent between P.I.P.S.
processes using You
can use these functions to send any of the supported signals (refer to the
following table). The P.I.P.S. runtime sends the following signals
@@ -44,13 +44,13 @@
Note: Always ensure that you handle A signal can be received by a
+ A signal can be received by a
process at any time and is handled immediately, unless it is currently blocked.
You can handle a signal in the following ways: Use default handling: The
-default action for each signal supported on Symbian platform is listed in
-the following table. Note: The default action for all of the
-signals sent by the P.I.P.S. runtime ( Note: The default action
+for all of the signals sent by the P.I.P.S. runtime ( A P.I.P.S. process can choose
+ A P.I.P.S. process can choose
to block (and subsequently unblock) signals to itself using Non-realtime signals are queued only
diff -r 25a17d01db0c -r ebc84c812384 Symbian3/SDK/Source/GUID-69B46D92-8D07-5B42-B603-3F725977AA4A.dita
--- a/Symbian3/SDK/Source/GUID-69B46D92-8D07-5B42-B603-3F725977AA4A.dita Fri Jan 22 18:26:19 2010 +0000
+++ b/Symbian3/SDK/Source/GUID-69B46D92-8D07-5B42-B603-3F725977AA4A.dita Thu Mar 11 15:24:26 2010 +0000
@@ -19,8 +19,8 @@
DHCP States DHCP Options The following are the states of the
-DHCP daemon in Symbian OS: The
+following are the states of the DHCP daemon in Symbian platform: DHCP Discover Bind Renew lease Release lease When
the DHCP client does not require a connection it releases the lease, so that
it can be configured to any other client requesting a connection. To obtain the network parameters from
-the DHCP server, the client uses the DHCP options. The Internet standard To
+obtain the network parameters from the DHCP server, the client uses the DHCP
+options. The Internet standard The
-Symbian OS build process describes how to build an application. The
-HashTableExample builds an executable called The HashTableExample builds an executable
+called Click on the following link to download
-the example: Click: The
-files reproduced here are the main files contained in the examples directory.
-Some extra files may be needed to run the examples, and these will be found
-in the appropriate examples directory. Icons are provided for messages, folders,
+ Click on the following link to download
+the example: Click: The files reproduced
+here are the main files contained in the examples directory. Some extra files
+may be needed to run the examples, and these will be found in the appropriate
+examples directory. Icons are provided for messages, folders,
and services, for use in the message browser. They are built into a Symbian
-OS multi-bitmap file Menu specifications for
+ Menu specifications for
the two MTM-specific operations, Refresh and Export text to file, are provided
in the resource Implementations
+ Implementations
of these functions check that that the specific operation is available and
appropriate to the context. The Comms Database has a set of parameters used
-to configure communications on Symbian OS. The information stored in the Comms
-Database is used to configure components in the comms stack. Information such
-as connection preferences, account settings and some of the linkage between
-components can be set in the comms stack. The configuration data is stored
-in records in database tables. The data also has data schema to define the
-tables. For more information and a full list of the settings in the Comms Database,
-see the The
+ The Comms Database has a set of parameters used to configure communications
+on Symbian platform. The information stored in the Comms Database
+is used to configure components in the comms stack. Information such as connection
+preferences, account settings and some of the linkage between components can
+be set in the comms stack. The configuration data is stored in records in
+database tables. The data also has data schema to define the tables. For more
+information and a full list of the settings in the Comms Database, see the The
Comms Database is configured in one of the following ways: It is compiled from
a definition file into a binary file to ship in the ROM of a device. For more
diff -r 25a17d01db0c -r ebc84c812384 Symbian3/SDK/Source/GUID-85D9878E-4FEF-5E45-9F87-53634CD171E0.dita
--- a/Symbian3/SDK/Source/GUID-85D9878E-4FEF-5E45-9F87-53634CD171E0.dita Fri Jan 22 18:26:19 2010 +0000
+++ b/Symbian3/SDK/Source/GUID-85D9878E-4FEF-5E45-9F87-53634CD171E0.dita Thu Mar 11 15:24:26 2010 +0000
@@ -11,7 +11,7 @@
PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
User Prompt Service (UPS) functionality
+ User Prompt Service (UPS) functionality
is provided by the server process If the device creators do not specify any policy
-file, the UPS uses the platform security check results to decide whether to
-access requested services. Thus not supplying policy files effectively turns
-UPS off. Configuring
+by the Symbian platform. If the device creators do not
+specify any policy file, the UPS uses the platform security check results
+to decide whether to access requested services. Thus not supplying policy
+files effectively turns UPS off. Configuring
the system server For each system server that accesses the UPS,
you need to do the following: Create one Note: For an example of how to include the above, see the
example code later in this document. If the system server uses the If the system server uses the The list below contains some common device security mechanisms. The Symbian platform is not well equipped to protect against a physical
-attack (that is, when an attacker has physical access to the mobile device)
-because access to a device is controlled by the device lock feature, which
-is often not used. Other external methods of protection, like a PIN code or
-Subscriber Identity Module (SIM) locking, tend to provide protection only
-when accessing a cellular network, leaving the information content vulnerable.
+ The
+Symbian platform is not well equipped to protect against a physical attack
+(that is, when an attacker has physical access to the mobile device) because
+access to a device is controlled by the device lock feature, which is often
+not used. Other external methods of protection, like a PIN code or Subscriber
+Identity Module (SIM) locking, tend to provide protection only when accessing
+a cellular network, leaving the information content vulnerable.
Without Sometimes, for security reasons, an application needs to identify the
-mobile device it is running on, for example, to use specific ciphering keys
-or to apply copy protection. Identification can be done by checking the device's
-International Mobile Equipment Identity (IMEI) code, which is unique in each
-device used in cellular networks. To retrieve the IMEI code, you can use,
-for example the Another way to get information about the running platform and the mobile
-device is to use the User authentication When powering on the device, the user is authenticated in the operating
-system level with standard device authentication methods, such as a PIN
-code and security code requests. However, these features can be turned off
-by the user and are easily reset with special hardware. If an application
-needs to authenticate the user, it should be done in the application level by
-implementing a separate user name/password authentication mechanism. The Symbian platform attempts to ensure the integrity of data even in
-the presence of unreliable communication and a shortage of resources, such
-as memory, power, and storage. The user may detach removable storage media at any time, either intentionally
-or unintentionally. The platform has a built-in detach handling mechanism,
-but applications should still be prepared for a sudden loss of storage media
-to prevent data loss or corruption. To check the type of storage media (removable/fixed),
-use the The device may shut down at any time, either by accident or because
-the battery runs out. Important data stored in nonpermanent memory should
-be written to permanent memory as early as possible. To query the battery
-level, use the Even though internal storage is not physically protected, you can secure
-memory cards with password protection. If the locking option is used (method Sometimes,
+for security reasons, an application needs to identify the mobile device it
+is running on, for example, to use specific ciphering keys or to apply copy
+protection. Identification can be done by checking the device's International
+Mobile Equipment Identity (IMEI) code, which is unique in each device used
+in cellular networks. To retrieve the IMEI code, you can use, for example
+the Another
+way to get information about the running platform and the mobile device is
+to use the User authentication When powering
+on the device, the user is authenticated in the operating system level with
+standard device authentication methods, such as a PIN code and security code
+requests. However, these features can be turned off by the user and are easily
+reset with special hardware. If an application needs to authenticate the user,
+it should be done in the application level by implementing a separate
+user name/password authentication mechanism. The
+Symbian platform attempts to ensure the integrity of data even in the presence
+of unreliable communication and a shortage of resources, such as memory, power,
+and storage. The user may detach removable storage media at any time,
+either intentionally or unintentionally. The platform has a built-in detach
+handling mechanism, but applications should still be prepared for a sudden
+loss of storage media to prevent data loss or corruption. To check the type
+of storage media (removable/fixed), use the The device may shut
+down at any time, either by accident or because the battery runs out. Important
+data stored in nonpermanent memory should be written to permanent memory as
+early as possible. To query the battery level, use the Even though internal storage is not physically
+protected, you can secure memory cards with password protection. If the locking
+option is used (method A mobile device can be protected with third-party security applications. Antivirus
-software can detect and quarantine any viruses that try to access the
-device, as well as restore infected files. Antivirus software is usually used
-together with firewalls to observe and protect both incoming and outgoing
-data connections. This enables monitoring of important data and prevents it
-from being sent out of the device. Firewall and antivirus software can also
-be part of an intrusion detection system that notifies the user whenever
-a malicious attempt is detected. Furthermore, there are applications you can use to encrypt existing
-files, manage passwords, and store information and data securely (in vaults).
-You can even cipher information in applications and connection methods which
-do not initially support ciphering (for example, short message service [SMS]). A mobile device can be protected with third-party security
+applications. Antivirus software can detect and quarantine any viruses
+that try to access the device, as well as restore infected files. Antivirus
+software is usually used together with firewalls to observe and protect
+both incoming and outgoing data connections. This enables monitoring of important
+data and prevents it from being sent out of the device. Firewall and antivirus
+software can also be part of an intrusion detection system that notifies
+the user whenever a malicious attempt is detected. Furthermore, there
+are applications you can use to encrypt existing files, manage passwords,
+and store information and data securely (in vaults). You can even cipher information
+in applications and connection methods which do not initially support ciphering
+(for example, short message service [SMS]). Each example demonstrates a different set of mobile telephony services,
and is stored in a subdirectory of Click on the following link to download
+ Click on the following link to download
the example: Click AutoDTMFDialler This
example performs the following operations: call identity services
using the The principal class used in this
+ The principal class used in this
example is To run the application you must configure the
@@ -112,7 +112,7 @@
The The The The The The Alternatively
a program can dynamically load a DLL into memory during execution, locate
the address of a symbol, use it and then unload the DLL. Traditionally and
-for greater memory efficiency, Symbian platform links by ordinal, whereas
-Unix-like operating systems link by name. The following sections provide example
-code to illustrate how the DLL loader works with each operating system. The
-Symbian platform v9.3 kernel supports all functionalities of P.I.P.S. libraries
-- referred to as "P.I.P.S.- ready". Pre v9.3 the kernel only supports the
-Symbian platform- standard ordinal lookup in DLLs; it does not support symbolic
-lookup. Thus the function The Symbian platform v9.3 kernel supports all functionalities
+of P.I.P.S. libraries - referred to as "P.I.P.S.- ready". Pre v9.3 the kernel
+only supports the Symbian platform- standard ordinal lookup in DLLs; it does
+not support symbolic lookup. Thus the function Symbian platform programs uses the function
-or variable's ordinal position within a DLL to link with DLLs. For example,
-implementing a shared DLL on Symbian platform could look like this: Symbian platform programs uses the
+function or variable's ordinal position within a DLL to link with DLLs. For
+example, implementing a shared DLL on the Symbian platform could look like
+this: Compiling this will generate a P.I.P.S. provides APIs from libdl to support
-dynamic lookup by name, which is used in Unix-like platforms, instead of the
-native Symbian platform lookup by ordinal mechanism. Lookup by name is possible
-thanks to the new libdl, which in turn uses the existing P.I.P.S. provides APIs from libdl
+to support dynamic lookup by name, which is used in Unix-like platforms, instead
+of the native Symbian platform lookup by ordinal mechanism. Lookup by name
+is possible thanks to the new libdl, which in turn uses the existing A symbol name lookup version of the dlsym()
function is provided, similar to UNIX®, which does not need any special treatment
(the example shown in the Using Shared libraries in a Unix-like environment section
diff -r 25a17d01db0c -r ebc84c812384 Symbian3/SDK/Source/GUID-A80ED7B2-4A58-570A-A671-4F4B1BB9FDAF.dita
--- a/Symbian3/SDK/Source/GUID-A80ED7B2-4A58-570A-A671-4F4B1BB9FDAF.dita Fri Jan 22 18:26:19 2010 +0000
+++ b/Symbian3/SDK/Source/GUID-A80ED7B2-4A58-570A-A671-4F4B1BB9FDAF.dita Thu Mar 11 15:24:26 2010 +0000
@@ -9,4 +9,9 @@
-->
- This section describes the concepts that Symbian OS uses in its implementation of sockets. The section includes a description of the architecture and the Sockets Server API. This section describes the concepts that Symbian platform
+uses in its implementation of sockets. The section includes a description
+of the architecture and the Sockets Server API. Dialog creators are EComplug-ins that
-device creators can write to generate the dialogs containing prompts for phone
-users. The plug-in has an API that consists of two asynchronous functions: Dialog creators are ECom plug-ins
+that device creators can write to generate the dialogs containing prompts
+for phone users. The plug-in has an API that consists of two asynchronous
+functions: The The UPS displays only one prompt at a time so it is possible for
there to be a delay between calling the function to prepare the dialog and
the function to display the dialog. It is also possible for other dialogs
-to be displayed between the dialog being prepared and its being displayed. Both Both The work split between The parameters to The following
-table describes the parameters for the Your implementation
@@ -118,28 +128,16 @@
is called through a The following code shows an example of
-a full implementation of the dialog creator file: The guide describe the tools for developing and building programs. For more information, see For more information, see The simplest installation file supports a single language version
only and requires no special capabilities. It installs a fixed list of files
-to the Symbian device and is self-signed. The PKG file must contain the following
-elements: The following PKG file is provided in The following PKG file is provided in Omission of fork() A Unix-like kernel
-is designed with the two stage process creation in mind. On Symbian platform
-(and Microsoft Windows®) the kernel was designed to create a process, which
-runs a single executable, in a single step. P.I.P.S. does not implement
+ Omission of fork() A Unix-like kernel is designed
+with the two stage process creation in mind. On the Symbian platform (and
+Microsoft Windows®), the kernel was designed to create a process, which runs
+a single executable, in a single step. P.I.P.S. does not implement
the On Symbian platform, the only
-way to load a process image into memory is using the loader. It assumes that
-the image is being loaded as a new process - one that owns no resources, has
-no open handles and so on. The change to the loader and any associated kernel
-changes, to support the Generic IPC P.I.P.S. supports two types
-of Inter-Process Communication (IPC) between processes or threads: On the Symbian
+platform, the only way to load a process image into memory is using the loader.
+It assumes that the image is being loaded as a new process - one that owns
+no resources, has no open handles and so on. The change to the loader and
+any associated kernel changes, to support the Generic IPC P.I.P.S. supports
+two types of Inter-Process Communication (IPC) between processes or threads: Pipes (named and unnamed): Unnamed pipes are created using This section describes the possible problems that you may encounter when
-you develop applications or libraries on Symbian platform based on Standard
-C++. These problems can occur in the following scenarios: Example The following example illustrates
-the problem with the use of one definition rule: Example The following example
+illustrates the problem with the use of one definition rule: This example must have displayed the output as 1,
-2. But on Symbian platform, it displays 1,1. The problem
-here is Symbian platform's DLL model. In particular Symbian platform does
-not support symbol pre-emption. In Symbian platform The problem
+here is, the Symbian platform's DLL model. In particular, the Symbian platform
+does not support symbol pre-emption. The following example illustrates
@@ -100,7 +100,7 @@
one which expects standard
C++ semantics ( another which expects
-Symbian platform semantics ( These sections provide some starting points for using the library
and the platform. These pages on the Symbian Foundation wiki provide
useful information for developers new to the Symbian platform. These documents help you write better and safer programs. These links take you to full lists of packages and tools described
in the library. Converting
+version of the Symbian platform. Converting
data recognizers into ECOM plugins Sorts array Destroys the array Click on the following link to download
-the example: Download some additional files
+ Click
+on the following link to download the example: Download some additional files
required by the example: View the source code: This example demonstrates how to construct
-and use the following types of dynamic arrays: CArrayFixFlat This
-example uses the The following operations are performed on this array: This
+example demonstrates how to construct and use the following types of dynamic
+arrays: CArrayFixFlat This example uses the The following operations are performed
+on this array: Append elements: The
example uses the For
-the emulator, the example builds an executable file called For the emulator, the example builds an
+executable file called Example Sign the The UID value you need to use for your application depends on whether
-your application is signed or self-signed. For more information, see OS Security is
-intended to support: OS Security is intended to support: Secure communication
protocols that provide data confidentiality and integrity Authentication of installable
@@ -23,8 +23,8 @@
Protection of device
integrity OS Security includes the following
-collections: OS
+Security includes the following collections: The following diagram shows the OS Security's components grouped
into collections, which are shown as white boxes: DRM DRM refers to
-an access control technology that prevents unauthorised use of copyrighted
+ DRM DRM
+refers to an access control technology that prevents unauthorised use of copyrighted
content. To know more about the key concepts used in OS
Security, see The Comms Database provides system wide storage for communications related settings. Comunications related settings specify the available connections. The settings can also enable connections. Information is arranged into a number of different tables. For example, tables of Internet Access Providers (IAPs) and tables of Internet Service Providers (ISPs). The Comms Database provides an abstract data storage API to tools and applications. This API allows future versions of Symbian OS to change the implementation of the data store. The Comms Database provides system wide storage for communications related
+settings. Comunications related settings specify the available connections. The settings
+can also enable connections. Information is arranged into a number of different
+tables. For example, tables of Internet Access Providers (IAPs) and tables
+of Internet Service Providers (ISPs). The Comms Database provides an abstract data storage API to tools and applications.
+This API allows future versions of Symbian platform to change
+the implementation of the data store. Click on the following link to download
-the example: click: The client-server framework is an important
-part of Symbian platform. There is a level of complexity in implementing a
-server for an application, but this example provides client interface code
-and server code that can be re-used in your own implementations. Symbian
-platform servers are of three basic types: Click
+on the following link to download the example: click: The
+client-server framework is an important part of the Symbian platform. There
+is a level of complexity in implementing a server for an application, but
+this example provides client interface code and server code that can be re-used
+in your own implementations. Symbian platform servers are of three
+basic types: Transient servers: these
are started on demand when a client needs the server, and exit after the last
client has disconnected - sometimes after a short delay, for example, the
@@ -41,12 +42,13 @@
are "local" to a process to provide multi-threaded access to thread-specific
resources, for example, the posix server (in the C Standard Library). The transient server supplied here
-runs in a thread in its own process. This gives the server independence from
-its clients. This is important because if the client were to create the server
-as a separate thread within its own process, then the server would exit, i.e.
-terminate, if its owning process terminated. This would be true even if clients
-in other processes were still connected to it. Equally as important: The
+transient server supplied here runs in a thread in its own process. This gives
+the server independence from its clients. This is important because if the
+client were to create the server as a separate thread within its own process,
+then the server would exit, i.e. terminate, if its owning process terminated.
+This would be true even if clients in other processes were still connected
+to it. Equally as important: a client does not explicitly
need to start the server prior to connecting; this is done by the client interface. the server terminates
@@ -154,7 +156,8 @@
To build the example: To build the example: You can build the example
from your IDE or the command line. If you use an IDE, import the If
diff -r 25a17d01db0c -r ebc84c812384 Symbian3/SDK/Source/GUID-C4CC3CA3-8C02-5F73-A482-4F849DD08111.dita
--- a/Symbian3/SDK/Source/GUID-C4CC3CA3-8C02-5F73-A482-4F849DD08111.dita Fri Jan 22 18:26:19 2010 +0000
+++ b/Symbian3/SDK/Source/GUID-C4CC3CA3-8C02-5F73-A482-4F849DD08111.dita Thu Mar 11 15:24:26 2010 +0000
@@ -9,4 +9,9 @@
-->
- This section describes changes and the instructions required to migrate from apps to exes, control panel plug-ins to Symbian OS v9.1 and later, exe-apps to a data caged directory structure, data recognizers to the secure version of Symbian platform and notifiers to Symbian OS v9.1. This section describes changes and the instructions required to migrate
+from apps to exes, control panel plug-ins to Symbian OS v9.1 and later, exe-apps
+to a data caged directory structure, data recognizers to the secure version
+of the Symbian platform and notifiers to Symbian OS v9.1. This page provides copyright and acknowledgement information. Copyright © 2009 Nokia Corporation and/or
-its subsidiary(-ies). All rights reserved. This component and the accompanying
-materials are made available under the terms of "Eclipse Public License v1.0"
-which accompanies this distribution, and is available at the URL Initial Contributors: Nokia Corporation - initial contribution Copyright
+© 2007-2010 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. This
+component and the accompanying materials are made available under the terms
+of "Eclipse Public License v1.0" which accompanies this distribution, and
+is available at the URL Initial
+Contributors: Nokia Corporation - initial contribution These
trademarks, and others, are acknowledged. Conventional abbreviations of these
trademarks are used throughout this documentation. Nokia and Nokia
diff -r 25a17d01db0c -r ebc84c812384 Symbian3/SDK/Source/GUID-CC8EA664-FF2E-40FB-BC1C-89FB1255A9C9.dita
--- a/Symbian3/SDK/Source/GUID-CC8EA664-FF2E-40FB-BC1C-89FB1255A9C9.dita Fri Jan 22 18:26:19 2010 +0000
+++ b/Symbian3/SDK/Source/GUID-CC8EA664-FF2E-40FB-BC1C-89FB1255A9C9.dita Thu Mar 11 15:24:26 2010 +0000
@@ -35,11 +35,10 @@
traffic between units, and by limiting access rights of unidentified parties.
These techniques can be applied from a single software component to an entire
business system. From Symbian OS v9.1 onwards, From Symbian OS v9.1 onwards, Additionally, there are This topic describes the known issues associated with developing Standard
-C++ applications or libraries on Symbian platform. The following functionalities of Standard C++ have certain limitations
-on Symbian platform: dynamic_cast: The unexpected_handler: The
CodeWarrior runtime does not support the invocation of Symbian platform does not support
-exporting static data. Hence, the Examples The Symbian platform does not
+support exporting static data. Hence, the Examples Using the id member
of standard facets: For example, you can change Before you start writing a
+ Before you start writing a
UPS policy file, you must configure the UPS. For more information, see The resource header file, The resource header file, Device creators can customise the circumstances under which
prompts are generated by configuring policies. Policies are made up of details
@@ -27,7 +27,7 @@
cases where the policy specifies that a user prompt is required, ECOM plug-ins
called Writing policy files include
+ Writing policy files include
the following: Naming and location
of policy files The following is an example
-of a policy file: The following is an example
+of a policy file: Click on the following link to download
+ Click on the following link to download
the example: Click: The example shows how to use the The example shows how to use the This example
shows how Feature Manager APIs allow applications and system software to establish
-which features are present on or absent from a Symbian OS device. The example consists
+which features are present on or absent from a Symbian device. The example consists
of two processes: To build the example: To build the example: The example builds two
executables called When running the example, the
+ When running the example, the
user is presented with various menu options that are self-explanatory. Press
any other key to exit. POSIX real-time extensions (based on POSIX real-time extensions (based on The File Server Plugin Framework provides a way for developers to extend the functionality of the Symbian OS File Server. Developers can produce plugins that intercept file and directory IO. The interception and processing of requests by plugins is transparent to the application making the request. The section first describes the base concept of a Node. The section continues with a description of the more specialised Nodes provided by the Communications Framework. The section first describes the base concept of a Node. The section continues
+with a description of the more specialised Nodes provided by the Communications
+Framework. Use the New File Service Client API to create a service client. You can
-download the API from the Use the New File Service Client API to create a service client. The binary compatibility of the API plug-ins is not guaranteed either
between platform versions or within a platform version. Test your application
on each device model that the application can be installed on to ensure the
@@ -24,7 +23,8 @@
than tested devices, define the product IDs (also called manufacturer IDs)
in the Use the The For more information about backup and restore, see The In addition, you can refer to Native C++ applications have broad access to the mobile device functionality. They can access, for example, network and mobile device interfaces, storage memory and messaging framework. This provides many features for application developers to use, but can be exploited in the wrong hands. The Symbian OS v9 Native C++ applications have broad access to the mobile device functionality.
+They can access, for example, network and mobile device interfaces, storage
+memory and messaging framework. This provides many features for application
+developers to use, but can be exploited in the wrong hands. The Symbian The following aspects of application security are covered in this section: This topic describes how to port some C applications to Symbian platform. It uses NOTE: These examples may not be present on all Symbian platform SDKs. Some of the code for the second two examples was taken from the FreeBSD source code. For information on FreeBSD, see This topic describes how to port some C applications to the Symbian
+platform. It uses NOTE: These examples may not be present on all Symbian platform
+SDKs. Some of the code for the second two examples was taken from the FreeBSD
+source code. For information on FreeBSD, see The following are important considerations for eclipsing
ROM files: In Symbian platform,
-drives are are scanned in the order Drives are
+scanned in the order The upgrading package
+P.I.P.S. libraries included on the Symbian platform are covered
+by the following copyright notices:
+
-
+
@@ -94,7 +94,7 @@
+a UPS Dialog Creator
+
+table describes the parameters for the
+to the Symbian device and is self-signed. The PKG file must contain
+the following elements:
+which was initially created by forking.
+
+Security Quick Start
+
+
+
+
+member variable of facet classes
+
+
-
-