UUSPL0 - USPOOL Command Exit

#### Search Results

Search

# UUSPL0 - USPOOL Command Exit

UUSPL0 is a user-written routine called by USPOOL after the terminal user has issued a valid command. UUSPL0 defines security restrictions pertaining to the use of all USPOOL functions and can also be used to restrict access to specific printers.

The UUSPL0 module is loaded once per invocation of USPOOL. This means that internal switches can be set and subsequently referred to. Note, however, that each new invocation of USPOOL causes a new copy of UUSPL0 to be loaded, thereby causing all switches in UUSPL0 to be reset.

A dummy UUSPL0 module is distributed with the Com-plete system as a member of the distribution source and load libraries.

Note
No security exists for USPOOL functions, unless it is established by you or restricted via Com-plete Security System definitions.

This document covers the following topics:

- How to Use UUSPL0

- UUSPL0 Conventions

## How to Use UUSPL0

Upon entry to UUSPL0, a set of parameters is received in the form of 5 fullword addresses. For the meaning of the words, see the parameters in the description of the UUSEX1 exit.

Upon return from UUSPL0 to USPOOL, the return code area is checked. If the return code is not zero, the requested operation is aborted and an error message is displayed on the main menu screen.

## UUSPL0 Conventions

The following table summarizes the UUSPL0 linkage conventions:

Feature | Convention
--- | ---
Attributes | AMODE 31; reentrant if in a resident area.
Type | Thread.
Size | Restricted to the USPOOL thread region size
Registers at Entry |
Register 1 | Address of the parameter list
Register 13 | Address of an 18-fullword save area
Register 14 | Return address in the calling module
Register 15 | Entry address of UUSPL0
Registers at Return | All registers except R15 must be unchanged.
Parameters |
Word 1 | Address of a return code halfword
Word 2 | Address of a four byte function code
Word 3 | Address of the requestors specifications
Word 4 | Address of the listqueue entry definitions or address of the printername
Word 5 | Optional for listqueue update functions, address of the old listqueue entry definitions
Return Codes |
0 | Allow the request.
4 | Disallow the request.

Function Codes passed via word 2:

PO | Printer overview
LQ | Listqueue overview
MOx | Modify Q-Entry x = U update M move C copy P purge
DP | Display printout in screen
OPx | Operate printer x = S start R reset H halt

Data Area passed via word 3:

USRXP | DSECT | , | &nbsp
USRXUID | DS | CL8 | User name
USRXACC | DS | CL12 | Account
USRXAUT | DS | AL2 | Authorization code
USRXCTL | DS | CL2 | Control/Noncontrol
USRXPL | EQU | *-USRXP | Length of element

Data Area passed via word 4 (and word 5):

OLQLINE | DSECT | , |
OLQNAME | DS | CL8 | List name
OLQNUM | DS | AL2 | Number
OLQFORM | DS | CL4 | Form
OLQSTAT | DS | C | Status
OLQLINS | DS | AL2 | Number of lines
OLQCOPY | DS | AL2 | Number of copies
OLQPRIO | DS | AL2 | Priority
OLQUSER | DS | CL8 | Originator
OLQLDRV | DS | CL8 | Logical output driver
OLQDEST | DS | CL8 | Destination
OLQLINEL | EQU | *-OLQLINE | Length of element

### On this page

- How to Use UUSPL0
- UUSPL0 Conventions