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.
# start.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 start
==short-description
Starts the specified process and then completely disowns it.
==long-description
This is useful in the situation where you want the process to have a longer lifetime than the L<fshell|fshell> instance that created it. Note the child process does not inherit fshell's I/O handles or environment variables.
==see-also
L<disown|disown>, L<time|time>
==argument string exe-name
The executable to start.
==argument string arguments optional last
The arguments to pass to the exe.
==option bool r rendezvous
Wait for the child process to call C<RProcess::Rendezvous> before exiting. Can not be used with C<--wait>.
==option bool w wait
Wait for the child process to exit before exiting. May not be used with C<--rendezvous>.
==option int t timeout
Only relevant with either C<--rendezvous> or C<--wait>. Causes the command to abort after the specified number of seconds if the child process hasn't called C<RProcess::Rendezvous> or exited (as appropriate) in that time. If the timeout is zero or not specified, the command will wait indefinitely.
==option bool m measure
If specified, measure the time taken for the child process to rendezvous (if C<--rendezvous> is specified) or exit (if C<--wait> is specified). This can be more accurate than using the fshell L<time|time> command if C<exe-name> is not an fshell command, because start doesn't attempt to parse its arguments as an fshell command line (adding the overhead of variable expansion, pipeline establishment etc) or to set up iosrv connections for the child process.
==copyright
Copyright (c) 2006-2010 Accenture. All rights reserved.