VMS Help
LBR Routines, LBR$SET_MODULE
*Conan The Librarian (sorry for the slow response - running on an old VAX)
|
|
The LBR$SET_MODULE routine reads, and optionally updates, the
module header associated with a given record's file address
(RFA).
Format
LBR$SET_MODULE library_index ,rfa [,bufdesc] [,buflen]
[,updatedesc]
OpenVMS usage:cond_value
type: longword (unsigned)
access: write only
mechanism: by value
Longword condition value. Most utility routines return a
condition value in R0. Condition values that this routine can
return are listed under Condition Values Returned.
library_index
OpenVMS usage:longword_unsigned
type: longword (unsigned)
access: read only
mechanism: by reference
Library control index returned by the LBR$INI_CONTROL routine.
The library_index argument is the address of the longword that
contains the index.
rfa
OpenVMS usage:vector_longword_unsigned
type: longword (unsigned)
access: read only
mechanism: by reference
Record's file address (RFA) associated with the module header.
The rfa argument is the address of a 2-longword array containing
the RFA returned by LBR$PUT_RECORD or LBR$LOOKUP_KEY.
bufdesc
OpenVMS usage:char_string
type: character string
access: write only
mechanism: by descriptor
Buffer that receives the module header. The bufdesc argument
is the address of a string descriptor pointing to the buffer
that receives the module header. The buffer must be the size
specified by the symbol MHD$B_USRDAT plus the value of the
CRE$L_UHDMAX create option. The MHD$ and CRE$ symbols are
defined in the modules $MHDDEF and $CREDEF, which are stored
in SYS$LIBRARY:STARLET.MLB.
buflen
OpenVMS usage:longword_signed
type: longword (signed)
access: write only
mechanism: by reference
Length of the module header. The buflen argument is the address
of a longword receiving the length of the returned module header.
updatedesc
OpenVMS usage:char_string
type: character string
access: read only
mechanism: by descriptor
Additional information to be stored with the module header.
The updatedesc argument is the address of a string descriptor
pointing to additional data that the Librarian stores with
the module header. If you include this argument, the Librarian
updates the module header with the additional information.
If you specify bufdesc, the LBR routine returns the module header
into the buffer. If you specify buflen, the routine also returns
the buffer's length. If you specify updatedesc, the routine
updates the header information.
You define the maximum length of the update information (by
specifying a value for CRE$L_UHDMAX) when you create the library.
The Librarian zero-fills the information if it is less than the
maximum length or truncates it if it exceeds the maximum length.
4 - Condition Values Returned
|
LBR$_HDRTRUNC Buffer supplied to hold the module header was
too small.
LBR$_ILLCTL Specified library control index not valid.
LBR$_ILLOP Error. The updatedesc argument was supplied
and the library was a Version 1.0 library or
the library was opened only for read access.
LBR$_INVRFA Specified RFA does not point to a valid module
header.
LBR$_LIBNOTOPN Specified library not open.
[legal]
[privacy]
[GNU]
[policy]
[netiquette]
[sponsors]
[FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.