8 Contributors: |
8 Contributors: |
9 --> |
9 --> |
10 <!DOCTYPE concept |
10 <!DOCTYPE concept |
11 PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"> |
11 PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"> |
12 <concept id="GUID-2E986A81-F094-4F1D-9ECB-6A325CFA5BB4" xml:lang="en"><title>Plug-ins</title><prolog><metadata><keywords/></metadata></prolog><conbody> |
12 <concept id="GUID-2E986A81-F094-4F1D-9ECB-6A325CFA5BB4" xml:lang="en"><title>Plug-ins</title><prolog><metadata><keywords/></metadata></prolog><conbody> |
13 <p>Plug-ins connect to the system using the EPOC Component Object Model (ECom). ECom is based on client/server architecture and provides services to instantiate, resolve, and destroy instances of plug-ins at run time. For more information, see the <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/guide/System-Libraries-subsystem-guide/ecom/EcomArchitecture/index.html" format="application/java-archive">ECom architecture</xref>.</p> |
13 <p>Plug-ins connect to the system using the EPOC Component Object Model |
14 <fig id="GUID-C5D783F2-8388-4097-8276-BAC6D5B17C2C"><title>ECom framework</title><image href="GUID-231E58F2-7935-462A-B048-51729D8245D4_d0e8421_href.png"/></fig> |
14 (ECom). ECom is based on client/server architecture and provides services |
15 <p>A hostile or malfunctioning plug-in may cause crashes or security leaks, even on otherwise well-tested applications. The <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/guide/platsecsdk/index.html" format="application/java-archive">platform security</xref> architecture protects the processes by verifying that the plug-in has equal or greater set of capabilities than the process in which it is loaded. For more information, see the <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/guide/System-Libraries-subsystem-guide/ecom/EcomArchitecture/EcomPlatSec.html" format="application/java-archive">ECom and the platform security capability model</xref>. </p> |
15 to instantiate, resolve, and destroy instances of plug-ins at run time. For |
16 <p>For examples, see <xref href="http://www.forum.nokia.com/main/resources/technologies/symbian/code_and_examples.html" scope="external">Symbian C++ code and examples</xref> on Forum Nokia.</p> |
16 more information, see the <xref href="GUID-30201A05-C6CE-5D34-9BDF-CDA4EE44878D.dita">ECom |
17 <section><title>Communication plug-ins</title> |
17 Architecture</xref>.</p> |
18 <p>It is possible to use plug-ins to implement additional functionality to serial, socket, and messaging frameworks. These plug-ins are especially important for security because they deal with communication.</p> |
18 <fig id="GUID-C5D783F2-8388-4097-8276-BAC6D5B17C2C"><title>ECom framework</title><image href="GUID-231E58F2-7935-462A-B048-51729D8245D4_d0e12619_href.png"/></fig> |
|
19 <p>A hostile or malfunctioning plug-in may cause crashes or security leaks, |
|
20 even on otherwise well-tested applications. The <xref href="GUID-4BFEDD79-9502-526A-BA7B-97550A6F0601.dita">platform |
|
21 security</xref> architecture protects the processes by verifying that the |
|
22 plug-in has equal or greater set of capabilities than the process in which |
|
23 it is loaded. For more information, see the <xref href="GUID-9E4D75C0-D797-5541-8E52-3C6D154CC74A.dita">ECom |
|
24 and the Platform Security Architecture</xref>. </p> |
|
25 <p>For examples, see <xref href="GUID-E59A469E-A2B5-5DF0-BA7E-C50D4A38CCAA.dita">Plug-in |
|
26 Framework (ECom) Examples</xref>.</p> |
|
27 <section id="GUID-2268BF28-467F-409F-B68C-5D361E8C5FF0"><title>Communication |
|
28 plug-ins</title> |
|
29 <p>It is possible to use plug-ins to implement additional functionality |
|
30 to serial, socket, and messaging frameworks. These plug-ins are especially |
|
31 important for security because they deal with communication.</p> |
19 <ul> |
32 <ul> |
20 <li><p>For serial communication there are serial protocol modules (CSY modules ), which are loaded by the Serial Comms Server. For more information on serial communication, see <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/guide/Serial-Communications-subsystem-guide/SerialCommsServerClientGuide/index.html" format="application/java-archive">Using Serial Communications Server Client-Side</xref>.</p></li> |
33 <li><p>For serial communication there are serial protocol modules |
21 <li><p>For socket-based communication there are protocol modules (PRT), which are loaded by the Socket Server. For more information on socket-based communication, see <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/guide/Communications-Infrastructure-subsystem-guide/esock/index.html" format="application/java-archive">Using Socket Server</xref>.</p></li> |
34 (CSY modules ), which are loaded by the Serial Comms Server. For more information |
22 <li><p>For messaging there are Message Type Modules (MTM), which include both client and server components. MTMs are a set of <codeph>dll</codeph>s rather than a single <codeph>dll</codeph>. For more information, see <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/guide/Messaging-subsystem-guide/MessagingGuide/MessagingGuide3/index.html" format="application/java-archive">Message Type Modules</xref>.</p></li> |
35 on serial communication, see <xref href="GUID-9B83CDD4-FC94-51A0-AC67-CD04BCAFEF08.dita">Serial |
|
36 Communications Server</xref>.</p></li> |
|
37 <li><p>For socket-based communication there are protocol modules |
|
38 (PRT), which are loaded by the Socket Server. For more information on socket-based |
|
39 communication, see <xref href="GUID-61E0CD76-A2E3-5066-84A8-146EECA8ADCD.dita">Socket |
|
40 Server</xref>.</p></li> |
|
41 <li><p>For messaging there are Message Type Modules (MTM), which |
|
42 include both client and server components. MTMs are a set of <codeph>dll</codeph>s |
|
43 rather than a single <codeph>dll</codeph>. For more information, see <xref href="GUID-8B843382-D27A-5E36-8F60-304903F3AA41.dita">Message Type Module</xref>.</p> |
|
44 </li> |
23 </ul> |
45 </ul> |
24 </section> |
46 </section> |
25 </conbody></concept> |
47 </conbody></concept> |