Fixed lots of issues with installing a low-caps version of fshell from SIS file.
* Fixed issue in CCommandFactory whereby some APIs like GetCommandInfoL could trigger allocations on the wrong heap or signals to the wrong thread. The symptoms were often seen as a crash in the which_00 thread when running ciftest.
* Lots of build fixes for when FSHELL_PROTECTED_UIDS isn't defined and when all capabilities aren't available.
* Added new platform.mmh macro FSHELL_OPEN_SIGNED.
* Open signing of fshell SIS files is now supported for production S60 handsets. Build fshell with the FSHELL_OPEN_SIGNED macro defined (and without defining FSHELL_CAP_ALL or FSHELL_PROTECTED_UIDS) in your platform.mmh and submit \epoc32\fshell\fshell.unsigned.sis to https://www.symbiansigned.com/app/page/public/openSignedOnline.do . The following commands are not available when using Open Signing due to Platform Security restrictions: fdb; kerninfo; chunkinfo; svrinfo; objinfo; sudo; fsck; localdrive; ramdefrag; readmem; reboot; setcritical; setpriority. Others such as chkdeps, e32header, ps, and fshell itself will run but in a restricted capacity (for example, fshell will no longer allow you to modify files in the \sys\bin directory).
* Removed commands objinfo, svrinfo, chunkinfo, readmem, fsck completely when memory access isn't present - previously they would still appear in the help but would give an error if you tried to run them.
# cenrep.cif
#
# Copyright (c) 2010 Accenture. All rights reserved.
# This component and the accompanying materials are made available
# under the terms of the "Eclipse Public License v1.0"
# which accompanies this distribution, and is available
# at the URL "http://www.eclipse.org/legal/epl-v10.html".
#
# Initial Contributors:
# Accenture - Initial contribution
#
==name cenrep
==short-description
Get and set Central Repository keys.
==long-description
To set integer key zero on repository 0x12345678 to 6 (for example), run:
cenrep 0x12345678 0 --set-int 6
Note, the Central Repository does not distinguish between 16-bit and 8-bit descriptor values, so if you try listing a key of type string or string8, this tool will display the value in 3 forms:
=over 5
=item *
Interpreted as a 16-bit string.
=item *
Interpreted as an 8-bit string.
=item *
As a hex dump.
=back
It is up to you to figure out which form is appropriate for the key you are looking at. For example, there will be no error if you try and assign a 16-bit string to a key defined in the cenrep data file as string8. It will suceed, but whatever uses this key will almost certainly break.
==argument uint repository_uid optional
The UID of the required repository. If not set, lists all the repositories one uid per line. These can be decoded by for example piping into uidinfo using C<cenrep | uidinfo --stdin>.
==argument uint key optional
The identifier of the required key. If not set, lists all the keys in the repository.
==option int i set-int
Sets the specified key to this integer value.
==option string s set-string
Sets the specified key to this 16-bit descriptor value.
==option bool f force
Attempt to read or set the key while pretending to have the secure ID of the repository creator. Unless the repository is configured to deny access even to its creator (which is rare) this is enough to gain access to otherwise inaccessible repositories.
==option bool d delete
Delete the specified key, or all keys in the repository if no key is specified.
==option bool r reset
Resets the repository. Combined with C<--force>, deletes the actual persists file on disk rather than just calling C<CRepository::Reset>.
==copyright
Copyright (c) 2007-2010 Accenture. All rights reserved.