;************************************************************************** ;* Although considerable effort has been expended to make this software * ;* correct and reliable, no warranty is implied; the author disclaims any * ;* obligation or liability for damages, including but not limited to * ;* special, indirect, or consequential damages arising out of or in * ;* connection with the use or performance of this software. * ;************************************************************************** .TITLE SMB_STARTFILE - PERFORM SITE DEPENDENT TASKS FOR SYMBIONT .IDENT /01/ ; ; DESCRIPTION: ; ; THIS ROUTINE IS A SITE-SUPPLIED ROUTINE. IT IS CALLED BY THE ; PRINT SYMBIONT JUST PRIOR TO OUTPUTTING THE MAIN INPUT FILE. ; IT WOULD USUALLY BE USED TO PERFORM SITE-SPECIFIC SECURITY ; TASKS, BUT CAN PERFORM ANY SIMPLE TASK THAT CAN UTILIZE THE ; DATA PASSED TO IT. ; ; THE CALLING SEQUENCE IS: ; ; SMB_STARTFILE (FILE_NAME, JOB_NAME, USER_NAME, UIC, DATE_TIME, ; QUEUE, EXECUTOR_QUEUE, DEVICE_NAME, ENTRY, ; COPY) ; ; FILE_NAME IS THE ADDRESS OF A DESCRIPTOR POINTING TO THE NAME ; OF THE FILE BEING PRINTED. ; ; JOB_NAME IS THE ADDRESS OF A DESCRIPTOR POINTING TO THE NAME OF ; THE PRINT JOB. ; ; USER_NAME IS THE ADDRESS OF A DESCRIPTOR POINTING TO THE NAME OF ; THE USER SUBMITTING THE PRINT JOB. ; ; UIC IS THE ADDRESS OF A LONGWORD CONTAINING THE USER ; IDENTIFICATION CODE OF THE USER SUBMITTING THE PRINT JOB. ; ; DATE_TIME IS THE ADDRESS OF A QUADWORD CONTAINING THE DATE/TIME ; THAT THE PRINT JOB WAS QUEUED. ; ; QUEUE IS THE ADDRESS OF A DESCRIPTOR POINTING TO THE NAME OF ; CONTROLLING GENERIC OR LOGICAL QUEUE. ; ; EXECUTOR_QUEUE IS THE ADDRESS OF A DESCRIPTOR POINTING TO THE ; NAME OF THE EXECUTOR TERMINAL OR PRINTER QUEUE. ; ; DEVICE_NAME IS THE ADDRESS OF A DESCRIPTOR POINTING TO THE NAME ; OF THE DEVICE ON WHICH THE PRINT JOB IS OUTPUT. ; ; ENTRY IS THE ADDRESS OF A LONGWORD CONTAINING THE ENTRY ; NUMBER OF THE PRINT JOB. ; ; COPY IS THE ADDRESS OF A LONGWORD CONTAINING THE COPY NUMBER ; OF THE FILE BEING PRINTED. ; ; ; UPON RETURN, R0 MUST CONTAIN THE STATUS CODE. IF THE LOW BIT ; OF THE RETURN STATUS CODE IS CLEAR, THE SYMBIONT WILL ASSUME ; THAT A FATAL ERROR HAS OCCURRED. ; ; ; SYMBOL DEFINITIONS ; FILE_NAME = 4 JOB_NAME = 8 USER_NAME = 12 UIC = 16 DATE_TIME = 20 QUEUE = 24 EXECUTOR_QUEUE = 28 DEVICE_NAME = 32 ENTRY = 36 COPY = 40 ; ; LOCAL DATA ; .PSECT $DATA CON, REL, LCL, NOEXE, NOSHR, PIC, RD, WRT ; ; START CODE ; .PSECT $CODE CON, REL, LCL, EXE, SHR, PIC, RD, NOWRT .ENTRY SMB_STARTFILE,^M<> MOVL #SS$_NORMAL, R0 ; SET NORMAL RETURN VALUE RET ; RETURN TO SYMBIONT .END