PMDF System Manager's Guide


Previous Contents Index

2.2.6.5 General Database Substitutions, $(...)

A substitution of the form $(text) is handled specially. The text part is used as a key to access the special database PMDF_GENERAL_DATABASE.b This database is generated with the pmdf crdb utility. If text is found in the database the corresponding template from the database is substituted. If text does not match an entry in the database the rewrite process fails; it is as if the rewrite rule never matched in the first place. If the substitution is successful the template extracted from the database is re-scanned for additional substitutions. However, additional $(text) substitutions from the extracted template are prohibited in order to prevent endless recursive references.

As an example, suppose that the address jdoe@example.decnet matches the rewrite rule


.DECNET     $($H) 
Then, the text string example will be looked up in the general database and the result of the look up, if any, instead used for the rewrite rule's template. Suppose that the result of looking up example is $u%examplevax.example.com@decnet. Then the output of the template will be jdoe@examplevax.example.com (i.e., username = jdoe, host/domain specification = examplevax.example.com), and the routing system will be decnet.

If a general database exists it should be world readable to insure that it operates properly.

Note

b On OpenVMS systems, this database is the file pointed at by the logical name PMDF_GENERAL_DATABASE, which is typically the file PMDF_TABLE:general.dat; on UNIX systems, this database consists of the file specified by the PMDF_GENERAL_DATABASE option in the /etc/pmdf_tailor file, which is usually the file /pmdf/table/generaldb.*.


Previous Next Contents Index