What are capabilities?
A capability is a feature of Symbian Platform Security, introduced on S60 in S60 3rd Edition. For each of the capabilities, each running process (started from an EXE file) either has it or hasn't. Some actions, such as calling a server on the Symbian OS, require the calling process to have a capability. Whether or not the capability is required is controlled by the server that is being called: each server defines its own policy.
Also libraries (DLLs) have capabilities, but these are interpreted a bit differently than capabilities of processes (EXE files). When applied to a DLL, a capability indicates the trust level of the code within the DLL. When the DLL is loaded into a process, the code is executed with the capabilities of the process (EXE), not the capabilities of the DLL. The capabilities of the DLL just indicate to which extent the code in the DLL can be trusted. As an example, an EXE that has a TCB capability cannot load a DLL that does not have the TCB capability because the lack of TCB on a DLL indicates that the DLL code is not trusted to execute under TCB capability.
List of S60 3rd Edition capabilities
Basic capabilities - approved by the end user
Extended capabilities - approved by Symbian Signed