Probe initialization

The probe has facilities for handling traps and SIGINT interrupts it receives while it is parsing the configuration file for SNMP V3 (mttrapd.conf).

Defining the startup behavior shows how the probe processes user entries in the configuration files and loads them. While the probe is doing this, there is a possibility of it receiving traps or a SIGINT interrupt. This is especially likely to occur when the configuration file contains a large number of user entries and engine identifiers. So the probe has facilities for dealing with these circumstances.

SNMP traps

The probe has facilities for handling all versions of SNMP traps.

The probe can receive and handle SNMP V1 and V2 traps while it is parsing the configuration file. Since these do not require any user validation, there is no dependency on the non-persistent configuration file.

The probe can receive V3 traps and process them, as long as the related user credentials have been read from the configuration file at the time the trap arrives. If the probe has not read that part of the configuration file, the probe cannot process the trap. Hence it rejects the trap.

SIGINT interrupt

The probe can receive a SIGINT interrupt at any time. If it receives one while parsing the configuration file, the probe stops processing the file and exits after writing out the set of users it has so far processed to the persistent configuration file. This means that the list of users may be incomplete or inconsistent depending on when the interrupt was received during the parsing process.

SNMP configuration validation

During startup, the mttrapd.conf files residing in ConfPath and PersistentDir are subject to the configuration validation process, which triggers the probe to exit upon any of the following scenarios:

  1. The probe cannot find an mttrapd.conf file in ConfPath.
    Note: An mttrapd.conf file need not be present in PersistentDir during startup.
  2. The probe cannot read the mttrapd.conf file.
  3. The probe detects a syntax error in known directives, for example: createUser.
  4. The probe reads an unknown directive.
    Note: The first word read from a line is taken to be a directive.

Mismatch between the probe configuration and deployment

Because the decryption test is not part of the configuration validation process, during configuration validation the probe’s take on mttrapd.conf as a plaintext or an encrypted artifact is as per the assumption established by the probe’s properties. This means that a mismatch between the probe configuration and deployment can occur, for example:

With EnableCryptoConfig set to 0 while mttrapd.conf is encrypted, the probe would read in the encrypted content without performing decryption, thus causing the raw content to not be processable by the configuration validation process.This would result in an example of Scenario 4, the probe reading an unknown directive.