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.
// ltkutils.mmp
//
// 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
//
#include <fshell/common.mmh>
target ltkutils.dll
targettype dll
uid 0x100000af FSHELL_UID_LTKUTILS
capability FSHELL_CAP_MMP_NORMAL
nostrictdef
#include <fshell/fsh_system_include.mmh>
userinclude ..\inc
sourcepath ..\src
source heaphackery.cpp
source proxyallocatorhelper.cpp
source keyinject.cpp
source hexdump.cpp
source w32crack.cpp
source friendlynames.cpp
source rez.cpp
source clipboard.cpp
source descriptorJuggling.cpp
source settings.cpp
source bsym.cpp
source mapfile.cpp
source symbolics.cpp
source bsymtree.cpp
#ifdef ARMCC
source breakpoint.cia
#endif
source breakpoint.cpp
source ltkhal.cpp
library euser.lib
library iocli.lib
library efsrv.lib
library bafl.lib
library estor.lib
library hal.lib
#ifdef FSHELL_WSERV_SUPPORT
library ws32.lib
#endif
//library clogger.lib
// Enable these 2 lines to check all the offset calculations in RAllocatorHelper are correct. Requires base_e32 source code to be installed
//MACRO TEST_HYBRIDHEAP_ASSERTS
//userinclude ..\..\..\..\sf\os\kernelhwsrv\kernel\eka\include