offset - TPOCC Offset Server

offset is a network server that provides information about TPOCC system variables to clients.

A single instance of the offset server can support multiple missions, each on a different server port, "mission_offset". In addition, the offset server also provides service to clients on a generic server port named "offset". If a request for information about a system variable is received on a mission-specific connection, the variable is looked up in that mission's system variable database only. If an information request is received on the generic port, the offset server searches all of the system variable databases and returns the first occurrence of the variable.

Requests to and responses from the offset server are encoded in ASCII and sent over the network as XDR strings. A program like talknet, in XDR mode, can be used to communicate interactively with an offset server. The OFF_UTIL functions provide applications with a simple, programmatic interface to offset servers.

The following commands are recognized by the offset server:

enables or disables debug output from the OFFSET server.

LOOKUP variable
requests information about a system variable. The information is returned in a single, XDR string formatted as follows:
"INFO variable -mission name -process name -mnemonic name -dataType name -elementSize number -numElements number -offset number [-ambiguous]"
The "-offset" option specifies the byte offset of the variable's value in the mission's system variable shared memory. The "-ambiguous" option is returned if the variable's mnemonic is not unique within the mission; this option is not a reflection of the fact that the variable may be defined by several missions.


% offset [-debug] [[-mission name] ...] [[-Mission name] ...] [-vperror]


enables debug output (written to stdout).
-mission name
-Mission name
specifies the TPOCC mission being serviced. These options can appear multiple times, once for each mission being serviced. If the option is -mission, the offset server maps to the shared memory containing the values of the variables. If the option is -Mission, the offset server does not map to the shared memory; the values are stored in dynamically-allocated memory that is, of course, inaccessible to other processes. Missions can be mixed and matched with respect to mapping by a single instance of the offset server.
turns vperror() message output on. vperror() messages are low-level error messages generated by libgpl functions; normally, they are disabled. If enabled, the messages are output to stderr.

Alex Measday  /  E-mail