Guardian Procedure Calls Reference Manual (G06.25+)

Guardian Procedure Calls (O)
Guardian Procedure Calls Reference Manual522629-013
11-49
OPENER_LOST_ Procedure
table input
INT .EXT:ref:*
points to the beginning of the open table to be searched.
If the process handles of the primary and backup openers are not stored in the first
20 words of each table entry,
table must point to the process handle of the first
primary opener, not to the beginning of the table. See “Considerations.”
index input, output
INT .EXT:ref:*
on input, contains an index indicating at what point in the open table the search is
to begin. On return, if a lost opener is discovered,
index contains the index of
that opener’s table entry; otherwise, its contents are undefined.
Ordinarily, you initialize
index to -1 at the start of a search and do not alter its
contents on subsequent calls (continuing the same search). See “Considerations.”
number-of-entries input
INT:value
contains the total number of entries in the open table.
entry-size input
INT:value
contains the size in words of each entry in the open table.
Considerations
Determining if an opener has been lost
The OPENER_LOST_ procedure reports that an opener has been lost if:
The connection to a remote system is lost and the process was running in that
system.
A remote processor has failed and the process was running in that processor.
A local processor has failed and the process was running in that processor.
The open table
The open table is created and maintained by the caller. There should be an entry
for each open of the caller, containing the process handles of the primary and
backup openers plus any additional information that the caller wishes to store.
The OPENER_LOST_ procedure makes the following assumptions about the open
table that is supplied to it: