The LBR$PUT_MODULE routine puts an entire module, with the module's record file address (RFA), from memory space into the current library. Format LBR$PUT_MODULE library_index, mod_addr, mod_len, txtrfa
1 – Arguments
library_index OpenVMS usage:longword_unsigned type: longword (unsigned) access: read only mechanism: by reference Library control index returned by the LBR$INI_CONTROL library routine. The library_index argument is the address of the longword that contains the index. mod_addr OpenVMS usage:address type: quadword address access: read only mechanism: by 32-bit or 64-bit reference The address from which the Library service obtains the 64-bit address of where the module is mapped in memory. The mod_addr argument is the 32- or 64-bit virtual address of a naturally aligned quadword containing the virtual address location of the module to write to the library. mod_len OpenVMS usage:byte_count type: quadword (unsigned) access: read only mechanism: by 32- or 64-bit reference The 64-bit virtual address of a naturally aligned quadword containing the length of the module that the Library service is to write into the library. txtrfa OpenVMS usage:vector_longword_unsigned type: longword (unsigned) access: write only mechanism: by reference The module's record file address (RFA) of the library module header. The txtrfa argument is the address of the 2-longword array receiving the RFA of the newly created module header.
2 – Description
The LBR$PUT_MODULE routine puts an entire module, with the module's record file address (RFA), from memory space into the current library. LBR$PUT_END is not required when you write an entire module to the current library.