AIF module
Introduction
The AIF module provides a support for running Absolute files. The new interfaces used by FileSwitch to invoke Absolute files are used to call the AIF module (see ExecFormats for more details). By default the most protective state is used by the module, where it will not let any un-headered file run. This is the recommended setting and should not be changed by users without due consideration for the implications.
The checks used ensure the consistency of the AIF header on Absolute files. This helps to improve the stability of the system by rejecting code which is malformed.
Configuration
The AIF module can be configured for the current session by setting the AIF$Options system variable. This allows the user to disable certain checks imposed by the module. It is strongly recommended that this not be used by default; it should only be set when no other alternative exists. The options to disable checks will be removed in future.
The AIF$Options variable should be set to a string of characters indicating the checks which will be overridden :
O Accept over-long files
With this check disabled, files which have had data appended to
them, will be allowed to run. The additional data may indicate
an incorrectly patched application, or a virus.
T Accept truncated files
With this check disabled, files which have been reduced in size,
to smaller than the header declares, will be allowed to run.
Such truncation is usually caused by incomplete file transfers.
D Accept files with bad debug data descriptors
With this check disabled, files which contain incorrectly
specified debug data will be allowed to run. This may cause
problems for debuggers.
C Accept unsuitable code bit size
With this check disabled, code which claims to be 26 bit only
will be allowed to run on 32 bit hardware. This is one of
the most dangerous options and it should be used only as a last
resort.
A Accept non-AIF files
Which this check disabled, code which does not have AIF headers
will be allowed to run. This may cause problems for very old
applications which have been compressed using unsupported
compression tools.
Which this check disabled, code which does not have AIF headers will be allowed to run. This may cause problems for very old applications which have been compressed using unsupported compression tools.
Warning: Disabling the check imposed by the AIF module is not recommended. Any data loss or hardware damage caused by the disabling of the checks is at the user's own risk.
Logging
The AIF module will log any files which violate any of the checks it applies. All details are logged to the FileSwitch log, together with the error message (even if the error is not reported).
|