PrintMPKFile - print the contents of Vesta-2 MultiPKFiles


PrintMPKFile [ -verbose ] [ -html [directory] ] [ -url-patterns mpkfile-pattern pkfile-pattern cfp-group-pattern entry-pattern ] file ...2



PrintMPKFile prints the contents of Vesta-2 MultiPKFile(s) file. A MultiPKFile is a file written by the Vesta-2 cache server; it contains persistent cache entries. If file is a relative pathname, it is interpreted relative to the cache server's directory of stable cache entries as specified by the Vesta configuration file.

A MultiPKFile is a collection of PKFiles. A PKFile is a collection of cache entries with the same primary key. Within a PKFile, the cache entries are grouped by a secondary key, namely, the combined fingerprint of the values of the entry's common names. See MultiPKFile(5) for a complete description of the MultiPKFile file format.

Text Output

By default, a consice representation of the named MultiPKFiles are written. This concise representation does not include the contents of the cache entries themselves; only the number of cache entries with particular primary and secondary keys are printed. If -verbose is specified, then the complete contents of the named MultiPKFiles are printed.

HTML Output

If -html is specified, a collection of HTML files representing the complete contents of the named MultiPKFiles are generated.

When generating HTML, the output filenames are based on uniquely identifying information for each component. This makes it possible to generate HTML from multiple MultiPKFiles is a single directory. Specifically the filenames generated are as follows:


The top-level HTML file for each MultiPKFile. The name includes the four-digit hexadecimal primary key prefix which uniquely identifies this MultiPKFile. Example:

An HTML file is generated for each PKFile. The name includes the 128-bit primary key in hexadecimal. Example:

An HTML file is generated for each common fingerprint group. The name includes both the 128-bit primary key and the 128-bit common fingerprint in hexadecimal. Example:

An HTML file is generated for each individual cache entry. The name includes the entry's cache index in decimal. Example:

Each HTML file includes a set of links down to all the lower-level HTML files, and up to the enclosing HTML files.

The HTML output includes some additional information not present in the text output that may help in understanding the contents of the cache. Specifically:

Also, some information that's included in the text output but is primarily of interest when debugging the cache server is not included in the HTML output, including:

The -url-patterns option makes it possible to customize the inter-page hyper-links. This facilitates using a CGI gateway to PrintMPKFile.

Without the -url-patterns option, the inter-page links are simple relative file links. As long as the generated HTML files are kept in a single directory, the links will work. In other words, the default patterns are:

The URL pattern replacements are described below.


PrintMPKFile recognizes the following command-line options:


When producing text output, causes the complete contents of the named MultiPKFiles to be printed. When producing HTML output, causes the name of each generated HTML file to be printed.

-html [directory]

Generates HTML files representing the contents of the named MultiPKFiles, rather than text output. The optional directory argument controls where the generated HTML files are written. (The default is to write them in the current working directory.)

-url-patterns mpkfile-pattern pkfile-pattern cfp-group-pattern entry-pattern

This option has no effect unless -html is also used.

With this option, the inter-page hyper-links can be customized. This makes it possible to use a CGI gateway to PrintMPKFile. The patterns include the following replacements:

The 4-digit hexadecimal primary key prefix

The 128-bit primary key in hexadecimal, with '_' between the two 64-bit words

The names epoch as a decimal integer

The 128-bit common fingerprint in hexadecimal, with '_' between the two 64-bit words

The cache index in decimal

A literal '%'

Configuration Variables

Like most Vesta-2 applications, PrintMPKFile reads site-specific configuration information from a Vesta-2 configuration file named vesta.cfg. It first looks for this file in the current directory; if none is found there, it looks in your home directory.

The configuration file is divided into a number of sections, denoted in the file by [SectionName]. The variables used by PrintMPKFile are in the section denoted by [CacheServer]. Here are the relevant variables and their meanings; the types of the variables are shown in parentheses:

MetaDataRoot (string)
The pathname of the directory in which the Vesta system's metadata is stored. If this variable is undefined, the current directory is used. Other configuration variables are interpreted relative to this path.

MetaDataDir (string)
The directory (relative to the MetaDataRoot) in which the cache server's metadata is stored.

SCacheDir (string)
The directory (relative to the MetaDataRoot/MetaDataDir) in which the cache server stores cache entries.

See Also

EraseCache(1), PrintCacheVal(1), ShowCache(1), VCache(1), VCacheStats(1), MultiPKFile(5)


Allan Heydon (

Last modified on Fri Nov 14 11:05:16 EST 2003 by
     modified on Thu May 29 15:33:32 PDT 1997 by heydon
This page was generated automatically by mtex software.