Websites Navigation: Airbit | Shop | m-shell.net
Languages: EN | DE

Capabilities

Platform security is implemented by granting applications, libraries and processes created from them capabilities. Although somewhat similar to the user permissions described in section * (Library), capabilities are completely independent of user permissions. Successfully executing an m function requires both: the corresponding user permissions granted by m and the capabilities granted by the OS:

  • If a function is not permitted by the m user, it throws ExcNotPermitted.
  • If a function is not permitted by platform security, it throws ErrPermissionDenied.
Regarding m, capabilities currently can be split into four classes:
  • The basic capabilities, always available in m. These are the only capabilities granted when m has been "self signed", i.e. signed with a certificate generated by the m developers (or by yourself, if you have downloaded the corresponding tools). Basic capabilities must be granted by the user when installing the m application. Note that the default setting on some Symbian 3rd/5th Edition devices disallows installing self signed applications; the setting can usually be changed from the program manager application. A few devices completely prevent installation of self signed applications.

    A special rule applies to the "Location" capability required to access network and cell information: in m, it is considered an extended capability, even though it is a basic one on many devices. The self signed m package therefore does not include it to remain installable on as many devices as possible.

  • The extended capabilities, always available on Symbian 2nd Edition phones, and when m has been open signed (see next section), or by the Symbian Signed process.

  • The certified capabilities, always available on Symbian 2nd Edition phones, and when m has been signed with a developer certificate (see section * ()), or by the Symbian Signed process.

  • The approved capabilities which are only granted by the platform producer or the phone manufacturer. m on Symbian 3rd/5th Edition phones currently does not support any of the functions requiring approved capabilities.
The View→About dialog and the system.caps constant indicate the capabilities granted to the m process:

system.capsGranted capabilities
basicOnly basic.
extendedBasic and extended.
certifiedBasic, extended and certified.
allBasic, extended, certified and approved. Currently only available on Symbian 2nd Edition phones.

Please refer to the official symbian documentation for up to date information. For a list of capabilities, see e.g. forum.nokia.com/main/platforms/s60/capability_descriptions.html.


© 2004-2011 airbit AG, CH-8008 Zürich
Document AB-M-REF-887
mShell Home  > Documentation  > Manuals