Configuration files

The behavior of the simulator is controlled by a configuration file. When running under Windows, that is an XML file called ThalesParameters.xml. Under Linux, that is a text file called ThalesMonoParameters.txt. In both cases, the contents are semantically the same. This section describes the parameters as those are found in the XML configuration file.

The contents of the XML configuration file are the following:
<?xml version="1.0" encoding="utf-8" ?> 

<Racal>
   <Parameters>
	<!-- Port number for the simulator's TCP listener -->
	<Port value="9998" />
    
    	<!-- Port number for the simulator's console commands listener -->
    	<ConsolePort value="9997" />
		
	<!-- Max TCP connections allowed -->
	<MaxConnections value="5" />
		
	<!-- Full file name of the LMK storage file -->
	<LMKStorageFile value=" " />
	
	<!-- Directory that contains VB sources to compile and use as racal commands
	     in runtime -->
	<VBSourceDirectory value=".\Runtime" />

    	<!-- Directory where XML host command definitions reside -->
    	<XMLHostDefinitionsDirectory value="..\..\..\ThalesCore\XMLDefs\HostCommands" />
		
	<!-- Log level -->
	<LogLevel value="5" />
	
	<!-- Set to True to check LMK key parity before running a host command -->
	<CheckLMKParity value="True"/>
		
	<!-- Set to the length of a clear PIN -->
	<ClearPINLength value="4"/>
		
	<!-- Determine the firmware number to return on HSM status commands -->
	<FirmwareNumber value="0007-E000" />
		
	<!-- Determine the DSP firmware number to return on HSM status commands -->
	<DSPFirmwareNumber value="0001" />
		
	<!-- Set to True to start the simulator in the Authorized State -->
	<StartInAuthorizedState value="True" />

        <!-- Set to True if we'll be using double-length ZMKs. This is configured
             using the CS HSM command. -->
	<DoubleLengthZMKs value="True" />

        <!-- Set to True to force an old behavior of certain commands. -->
        <LegacyMode value="False" />

       <!-- Set to True to force the simulator to expect an ending trailer equal to 0x19 and a trailing header. -->
       <ExpectTrailers value="False" />

       <!-- Indicates the length of the message header. -->
       <HeaderLength value="4" />

       <!-- Indicates whether we should use EBCDIC instead of ASCII. -->
       <EBCDIC value="False" />
		
   <Parameters>
</Racal>

The parameters defined are the following:
During start-up the simulator tries to find and read the ThalesParameters.xml file. If that fails, the simulator will then try to find the ThalesMonoParameters.txt file. If that also fails, the simulator will use default values and continue.