Library lists
The library list for a job indicates which libraries are to be searched and the order in which they are to be searched.
When a program specifies an object, the object can be specified with a qualified name, which includes both the object name and the library name. Or, the library for the object can be specified as *LIBL (library list). The libraries on the library list are searched, in order, until the object is found.
Table 1 summarizes the parts of the library list and how they are built during a job. The sections that follow discuss the risks and protection measures for library lists.
Part | How it is built |
---|---|
System Portion 15 entries | Initially built using the QSYSLIBL system value. Can be changed during a job with the CHGSYSLIBL command. |
Product Library Portion 2 entries | Initially blank. A library is added to the product library portion of the library list when a command or menu runs that was created with a library in the PRDLIB parameter. The library remains in the product library portion of the library list until the command or menu ends. |
Current Library 1 entry | Specified in the user profile or on the Sign On display. Can be changed when a command or menu runs that specifies a library for the CURLIB parameter. Can be changed during the job with the CHGCURLIB command. |
User Portion 250 entries | Initially built using the initial library list from the user’s job description. If the job description specifies *SYSVAL, the QUSRLIBL system value is used. During a job, the user portion of the library list can be changed with the ADDLIBLE, RMVLIBLE, CHGLIBL, and EDTLIBL commands. |