SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page   0

TABLE OF CONTENTS   



   (1)      48  DECLARATIONS

   (1)     101  CONDITION TABLES

   (1)     140  TM_SETUP, TM_CLEANUP

   (1)     231  CONDITION SUBROUTINES - SETUP AND CLEANUP 

   (1)     324  FORM_CONDS

   (1)     417  VERIFY

   (1)     561  VFY_CLEANUP

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page   1

1.0                                                                                                                              (1)



                                     0000     1 	.TITLE	SATSSS45 SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)

                                     0000     2 	.IDENT	/1.0/

                                     0000     3 

                                     0000     4 ;

                                     0000     5 ;			  COPYRIGHT (c) 1977,1978 BY

                                     0000     6 ;	      DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.

                                     0000     7 ;

                                     0000     8 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND  COPIED

                                     0000     9 ; ONLY  IN  ACCORDANCE  WITH  THE  TERMS  OF  SUCH  LICENSE AND WITH THE

                                     0000    10 ; INCLUSION OF THE ABOVE COPYRIGHT NOTICE.  THIS SOFTWARE OR  ANY  OTHER

                                     0000    11 ; COPIES  THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY

                                     0000    12 ; OTHER PERSON.  NO TITLE TO AND OWNERSHIP OF  THE  SOFTWARE  IS  HEREBY

                                     0000    13 ; TRANSFERRED.

                                     0000    14 ;

                                     0000    15 ; THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE  WITHOUT  NOTICE

                                     0000    16 ; AND  SHOULD  NOT  BE  CONSTRUED  AS  A COMMITMENT BY DIGITAL EQUIPMENT

                                     0000    17 ; CORPORATION.

                                     0000    18 ;

                                     0000    19 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR  RELIABILITY  OF  ITS

                                     0000    20 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.

                                     0000    21 ;

                                     0000    22 

                                     0000    23 ;++

                                     0000    24 ; FACILITY:	SYSTST (SATS SYSTEM SERVICE TESTS)

                                     0000    25 ;

                                     0000    26 ; ABSTRACT:

                                     0000    27 ;

                                     0000    28 ;		THIS MODULE CONTAINS SUBROUTINES WHICH, WHEN LINKED

                                     0000    29 ; WITH SUCCOMMON.OBJ, FORM TEST MODULE SATSSS45 TO TEST SUCCESSFUL

                                     0000    30 ; OPERATION OF THE $SETPRI SYSTEM SERVICE. THE SERVICE IS INVOKED

                                     0000    31 ; UNDER VARIOUS INPUT CONDITIONS WITH VARYING INPUT PARAMETERS. ONLY

                                     0000    32 ; SUCCESSFUL STATUS CODES ARE EXPECTED IN THIS TEST MODULE.  CORRECT 

                                     0000    33 ; OPERATION OF THE SERVICE FOR EACH OF ITS ISSUANCES IS VERIFIED BY

                                     0000    34 ; CHECKING FOR AN SS$_NORMAL STATUS CODE, EXPECTED RETURN ARGUMENTS

                                     0000    35 ; AND EXPECTED FUNCTIONALITY PERFORMED.

                                     0000    36 ;

                                     0000    37 ; ENVIRONMENT:	USER MODE IMAGE; NEEDS CMKRNL PRIVILEGE,

                                     0000    38 ;		DYNAMICALLY ACQUIRES OTHER PRIVILEGES, AS NEEDED.

                                     0000    39 ;

                                     0000    40 ; AUTHOR: THOMAS L. CAFARELLA,		CREATION DATE: NOV, 1977

                                     0000    41 ;

                                     0000    42 ; MODIFIED BY:

                                     0000    43 ;

                                     0000    44 ;	, : VERSION

                                     0000    45 ; 01	- 

                                     0000    46 ;--

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page   2

1.0             DECLARATIONS                                                                                                     (1)



                                     0000    48 	.SBTTL	DECLARATIONS

                                     0000    49 ;

                                     0000    50 ; INCLUDE FILES:

                                     0000    51 ;

                                     0000    52 	$PRVDEF				; PRIVILEGE BIT DEFINITIONS

                                     0000    53 	$PHDDEF				; PROCESS HEADER OFFSETS

                                     0000    54 	$PQLDEF				; PROCESS QUOTA CODES

                                     0000    55 	$PCBDEF				; PCB LABELS

                                     0000    56 	$DIBDEF				; DEVICE INFO BLOCK OFFSETS

                                     0000    57 ;

                                     0000    58 ; MACROS:

                                     0000    59 ;

                                     0000    60 ;

                                     0000    61 ; EQUATED SYMBOLS:

                                     0000    62 ;

                                     0000    63 ;

                                     0000    64 ; OWN STORAGE:

                                     0000    65 ;

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page   3

1.0             DECLARATIONS                                                                                                     (1)



                                 00000000    67 	.PSECT	RODATA,RD,NOWRT,NOEXE,LONG

                                     0000    68 TEST_MOD_NAME::	STRING	C,<SATSSS45>	; TEST MODULE NAME

                                     0009    69 TEST_MOD_NAME_D: STRING	I,<SATSSS45>	; TEST MODULE NAME DESCRIPTOR

                                     0019    70 MSG1_INP_CTL:	STRING	I,<  SSSPR!4ZW: CONDITIONS:>

                                     0039    71 					; FAO CTL STRING FOR MSG1 IN SUCCOMMON.MAR

                                     0039    72 MSG3_ERR_CTL::	STRING	I,< *SSSPR!4ZW: !AS> 

                                     0051    73 					; FAO CTL STRING FOR MSG3 IN SUCCOMMON.MAR

                                     0051    74 SUBJPRN:	STRING	I,<SATSSS45_CRE> ; PROCESS & MBX NAME FOR CREATED PROCESS

                                     0065    75 IMAGNAM:	STRING	I,<SYSTST$RES:SATSUT08.EXE> ; IMAGE NAME FOR CREATED PROC

                                     0084    76 QUOTALIST:	$QUOTA	CPULM,0		; INFINITE CPU

                                     0089    77 		$QUOTA	BYTLM,512	; BYTE LIMIT FOR BUFFERED I/O

                                     008E    78 		$QUOTA	FILLM,2		; OPEN FILE COUNT LIMIT

                                     0093    79 		$QUOTA	PGFLQUOTA,10	; PAGING FILE QUOTA

                                     0098    80 		$QUOTA	PRCLM,2		; SUBPROCESS QUOTA

                                     009D    81 		$QUOTA	TQELM,3		; TIMER QUEUE ENTRY QUOTA

                                     00A2    82 		$QUOTA	LISTEND		; DEFINES END OF LIST

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page   4

1.0             DECLARATIONS                                                                                                     (1)



                                 00000000    84 	.PSECT	RWDATA,RD,WRT,NOEXE,LONG

                           00000008  0000    85 PRIVMASK:	.BLKQ	1		; ADDR OF PRIVILEGE MASK (IN PHD)

                           0000000C  0008    86 MBXCHAN:	.BLKL	1		; CHAN. NO. FOR MAILBOX FOR CREATED PROCESS

                                     000C    87 MBXCHANINFO:	STRING O,75		; CHANNEL INFO RETURNED BY GETCHN

                           00000063  005F    88 MBXUNIT:	.BLKL	1		; SAVE AREA FOR MAILBOX UNIT NUMBER

                                     0063    89 MBXBUFF:	STRING	O,120		; MAILBOX BUFFER FOR CREATED PROCESS

                           000000E7  00E3    90 DEST_PIDADR:	.BLKL	1		; DESTINATION PID ADDR, WRITTEN BY S.S.

                           000000EB  00E7    91 ZEROPID:	.BLKL	1		; PID OF ZEROES

                           00000000  00EB    92 SELFPID:	.LONG	0		; PID OF THIS PROCESS

                           000000F3  00EF    93 CREPID:		.BLKL	1		; PID OF CREATED PROCESS

                           000000F7  00F3    94 SUBJPID:	.BLKL	1		; PID OF SUBJECT PROCESS (SELF OR OTHER)

                                 FF  00F7    95 ORIGPRI:	.BYTE	-1		; ORIGINAL PRIORITY OF SUBJECT PROCESS

                           00 00 00  00F8    96 		.BYTE	0,0,0		; NEED HI-ORDER 0'S WHEN  ...

                                     00FB    97 					; ... ORIGPRI USED AS LONGWORD

                           000000FC  00FB    98 ESTPRI:		.BLKB	1		; PRIORITY ESTABLISHED BEFORE  ...

                                     00FC    99 					; ... SUBJECT SETPRI CHANGED IT

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page   5

1.0             CONDITION TABLES                                                                                                 (1)



                                     00FC   101 	.SBTTL	CONDITION TABLES

                                     00FC   102 ;

                                     00FC   103 ;	***** CONDITION TABLES FOR SETPRI SYSTEM SERVICE *****

                                     00FC   104 ;

                                     00FC   105 	COND	1,NOTARG,<PID ADDRESS>,-

                                     00FC   106 		  <NOT SPECIFIED>,-

                                     00FC   107 		  <SPECIFIED, NON-ZERO>,-

                                     00FC   108 		  <SPECIFIED, ZERO>,-

                                     00FC   109  

                           00000000' 0147   110 		    .ADDRESS	0

                           000000F3' 014B   111 		    .ADDRESS	SUBJPID

                           000000E7' 014F   112 		    .ADDRESS	ZEROPID

                                     0153   113 ;

                                     0153   114 	COND	2,NOTARG,<PROCESS NAME ADDRESS>,-

                                     0153   115 		  <SPECIFIED>,-

                                     0153   116 		  <NOT SPECIFIED>,-

                                     0153   117  

                           00000051' 0189   118 		    .ADDRESS	SUBJPRN

                           00000000' 018D   119 		    .ADDRESS	0

                                     0191   120 ;

                                     0191   121 	COND	3,NOTARG,<PROCESS TYPE>,-

                                     0191   122 		  <SELF>,-

                                     0191   123 		  <SUBPROCESS>,-

                                     0191   124 		  <DETACHED, DIFFERENT GROUP>,-

                                     0191   125 		  <DETACHED, SAME GROUP, SAME MEMBER>,-

                                     0191   126 		  <DETACHED, SAME GROUP, DIFFERENT MEMBER>,-

                                     0191   127  

                           FFFFFFFF  0226   128 		    .LONG	^XFFFFFFFF ; PSEUDO-UIC

                           00000000  022A   129 		    .LONG	0	   ; PSEUDO-UIC

                           00000232  022E   130 		    .BLKL	1	   ; UIC

                           00000236  0232   131 		    .BLKL	1	   ; UIC

                           0000023A  0236   132 		    .BLKL	1	   ; UIC

                                     023A   133 ;

                                     023A   134 	COND	4,NULL

                                     023B   135 

                                     023B   136 	COND	5,NULL

                                     023C   137 

                                 00000000   138 	.PSECT	SATSSS45,RD,WRT,EXE

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page   6

1.0             TM_SETUP, TM_CLEANUP                                                                                             (1)



                                     0000   140 	.SBTTL	TM_SETUP, TM_CLEANUP

                                     0000   141 ;++

                                     0000   142 ; FUNCTIONAL DESCRIPTION:

                                     0000   143 ;

                                     0000   144 ;		TM_SETUP AND TM_CLEANUP ARE CALLED TO PERFORM

                                     0000   145 ; REQUIRED HOUSEKEEPING AT THE BEGINNING AND END, RESPECTIVELY, OF

                                     0000   146 ; TEST MODULE EXECUTION.

                                     0000   147 ;

                                     0000   148 ; CALLING SEQUENCE:

                                     0000   149 ;

                                     0000   150 ;	BSBW TM_SETUP   BSBW TM_CLEANUP

                                     0000   151 ;

                                     0000   152 ; INPUT PARAMETERS:

                                     0000   153 ;

                                     0000   154 ;	NONE

                                     0000   155 ;

                                     0000   156 ; IMPLICIT INPUTS:

                                     0000   157 ;

                                     0000   158 ;	NONE

                                     0000   159 ;

                                     0000   160 ; OUTPUT PARAMETERS:

                                     0000   161 ;

                                     0000   162 ;	NONE

                                     0000   163 ;

                                     0000   164 ; IMPLICIT OUTPUTS:

                                     0000   165 ;

                                     0000   166 ;	TM_SETUP:  COND TABLE INDEX REGISTERS (R2,3,4,5,6) CLEARED;

                                     0000   167 ;		   ALL PRIVILEGES ACQUIRED.

                                     0000   168 ;

                                     0000   169 ; COMPLETION CODES:

                                     0000   170 ;

                                     0000   171 ;	EFLAG SET TO NON-ZERO IF ERROR ENCOUNTERED.

                                     0000   172 ;

                                     0000   173 ; SIDE EFFECTS:

                                     0000   174 ;

                                     0000   175 ;	SS_CHECK AND ERR_EXIT MACROS CAUSE PREMATURE EXIT 

                                     0000   176 ;	(VIA RSB) IF ERROR ENCOUNTERED.

                                     0000   177 ;

                                     0000   178 ;--

                                     0000   179 

                                     0000   180 

                                     0000   181 

                                     0000   182 TM_SETUP::

                          52     D4  0000   183 	CLRL	R2			; INITIALIZE

                          53     D4  0002   184 	CLRL	R3			; .. CONDITION

                          54     D4  0004   185 	CLRL	R4			; .... TABLE

                          55     D4  0006   186 	CLRL	R5			; ...... INDEX

                          56     D4  0008   187 	CLRL	R6			; ........ REGISTERS

                          FFF3'  30  000A   188 	BSBW	MOD_MSG_PRINT		; PRINT TEST MODULE BEGIN MSG

   00000000'EF   00000000'EF     DE  000D   189 	MOVAL	TEST_MOD_SUCC,TMD_ADDR	; ASSUME END MSG WILL SHOW SUCCESS

            00   00000000'8F     F0  0018   190 	INSV	#SUCCESS,#0,#3,MOD_MSG_CODE ; ADJUST STATUS CODE FOR SUCCESS

   00000000'EF            03         001F       

                                     0025   191 	MODE	TO,5$,KRNL		; KERNEL MODE TO ACCESS PHD

            59   00000000'9F     D0  0048   192 	MOVL	@#CTL$GL_PHD,R9		; GET PROCESS HEADER ADDRESS

   00000000'EF            69     DE  004F   193 	MOVAL	PHD$Q_PRIVMSK(R9),PRIVMASK ; GET PRIV MASK ADDRESS

                                     0056   194 	MODE	FROM,5$	; BACK TO USER MODE

                                     0057   195 	PRIV	ADD,ALL			; GET ALL PRIVILEGES

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page   7

1.0             TM_SETUP, TM_CLEANUP                                                                                             (1)



                                     0080   196 	$SETPRN_S TEST_MOD_NAME_D 	; SET PROCESS NAME

                                     008D   197 	SS_CHECK  NORMAL		; CHECK STATUS CODE RETURNED FROM SETPRN

                                     00BB   198 	$WAKE_S	SELFPID			; GET MY PID

                                     00CA   199 	SS_CHECK NORMAL			; CHECK FOR NORMAL RETURN

                                     00F8   200 	$HIBER_S			; UNDO ABOVE WAKE

                                     00FF   201 	SS_CHECK NORMAL			; CHECK FOR NORMAL RETURN

                                     012D   202 ;

                                     012D   203 ; THE FOLLOWING CODE ESTABLISHES UIC'S IN THE CONDITION 3 TABLE

                                     012D   204 ;

                                     012D   205 	MODE	TO,20$,KRNL		; KERNEL MODE TO ACCESS PCB

            59   00000000'9F     D0  0150   206 	MOVL	@#SCH$GL_CURPCB,R9 	; GET CURRENT PCB ADDRESS

            59         20 A9     D0  0157   207 	MOVL	PCB$L_UIC(R9),R9 	; PICK UP UIC FROM PCB

                                     015B   208 	MODE	FROM,20$		; ... AND GET BACK TO USER MODE

                                     015C   209 ;

                                     015C   210 ; R9 NOW CONTAINS "MY" UIC

                                     015C   211 ;

            5A            02     9A  015C   212 	MOVZBL	#2,R10			; GET COND3 TABLE INDEX NUMBER INTO A REG

            59   00010000 8F     C1  015F   213 	ADDL3	#^X10000,R9,COND3_E[R10] ; PUT DIFF GROUP UIC INTO 3RD TABLE ELT

                 00000226'EF4A       0166       

                          5A     D6  016C   214 	INCL	R10			; POINT TO 4TH COND3 TABLE ELEMENT

   00000226'EF4A          59     D0  016E   215 	MOVL	R9,COND3_E[R10]		; PUT MY UIC INTO TABLE

                          5A     D6  0176   216 	INCL	R10			; POINT TO 5TH COND3 TABLE ELEMENT

            59            01     C1  0178   217 	ADDL3	#1,R9,COND3_E[R10] 	; PUT DIFF MEMBER UIC INTO THE TABLE

                 00000226'EF4A       017B       

                                     0181   218 	$CREMBX_S CHAN=MBXCHAN, LOGNAM=SUBJPRN, - ; GET MAILBOX FOR PROCESS

                                     0181   219 		  MAXMSG=#120, PROMSK=#0, BUFQUO=#240

                                     01A4   220 	SS_CHECK NORMAL			; CHECK NORMAL COMPLETION

                                     01D2   221 	$GETCHN_S CHAN=MBXCHAN, -	; GET CHAN INFO (UNIT NUMBER)

                                     01D2   222 		  PRIBUF=MBXCHANINFO

                                     01EC   223 	SS_CHECK NORMAL			; CHECK NORMAL COMPLETION

   0000005F'EF   00000020'EF     3C  021A   224 	MOVZWL	MBXCHANINFO+8+DIB$W_UNIT,MBXUNIT ; SAVE MAILBOX UNIT NUMBER

                                 05  0225   225 	RSB				; RETURN TO MAIN ROUTINE

                                     0226   226 TM_CLEANUP::

                                     0226   227 	$DELMBX_S  MBXCHAN		; DELETE TERMINATION MAILBOX

                          FDC9'  30  0234   228 	BSBW	MOD_MSG_PRINT		; PRINT TEST MODULE END MSG

                                 05  0237   229 	RSB				; RETURN TO MAIN ROUTINE

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page   8

1.0             CONDITION SUBROUTINES - SETUP AND CLEANUP                                                                        (1)



                                     0238   231 	.SBTTL	CONDITION SUBROUTINES - SETUP AND CLEANUP 

                                     0238   232 ;++

                                     0238   233 ; FUNCTIONAL DESCRIPTION:

                                     0238   234 ;

                                     0238   235 ;		CONDX AND CONDX_CLEANUP ARE SUBROUTINES WHICH ARE EXECUTED

                                     0238   236 ; BEFORE AND AFTER THE VERIFY SUBROUTINE, RESPECTIVELY, WHENEVER A NEW

                                     0238   237 ; CONDITION X VALUE IS SELECTED (SEE FUNCTIONAL DESCRIPTION OF SUCCOMMON

                                     0238   238 ; ROUTINE IN SUCCOMMON.MAR). ANY SETUP FUNCTION PARTICULAR TO THE 

                                     0238   239 ; CONDITION X TABLE IS INCLUDED IN THE CONDX SUBROUTINE AND CLEANED

                                     0238   240 ; UP, IF NECESSARY, IN THE CONDX_CLEANUP SUBROUTINE. THIS INCLUDES,

                                     0238   241 ; ESPECIALLY, CODE TO DETECT CONFLICTS AMONG CURRENT ENTRIES IN TWO

                                     0238   242 ; OR MORE CONDITION TABLES. IF A CONFLICT IS DETECTED, A NON-ZERO

                                     0238   243 ; VALUE IS STORED INTO CONFLICT, WHICH CAUSES THE CALLING ROUTINE

                                     0238   244 ; (SUCCOMMON) TO SKIP THE CURRENT ENTRY IN THE CONDITION X TABLE.

                                     0238   245 ;

                                     0238   246 ; CALLING SEQUENCE:

                                     0238   247 ;

                                     0238   248 ;	BSBW CONDX   BSBW CONDX_CLEANUP

                                     0238   249 ;	  WHERE X = 1,2,3,4,5

                                     0238   250 ;

                                     0238   251 ; INPUT PARAMETERS:

                                     0238   252 ;

                                     0238   253 ;	CONFLICT = 0

                                     0238   254 ;

                                     0238   255 ; IMPLICIT INPUTS:

                                     0238   256 ;

                                     0238   257 ;	R2,3,4,5,6 CONTAIN CURRENT CONDITION TABLE INDEX VALUES

                                     0238   258 ;	  FOR COND TABLES 1,2,3,4,5, RESPECTIVELY.

                                     0238   259 ;

                                     0238   260 ; OUTPUT PARAMETERS:

                                     0238   261 ;

                                     0238   262 ;	CONFLICT SET TO NON-ZERO IF COND TABLE CONFLICT DETECTED.

                                     0238   263 ;

                                     0238   264 ; IMPLICIT OUTPUTS:

                                     0238   265 ;

                                     0238   266 ;	R2,3,4,5,6 PRESERVED

                                     0238   267 ;

                                     0238   268 ; COMPLETION CODES:

                                     0238   269 ;

                                     0238   270 ;	NONE

                                     0238   271 ;

                                     0238   272 ; SIDE EFFECTS:

                                     0238   273 ;

                                     0238   274 ;	NONE

                                     0238   275 ;

                                     0238   276 ;--

                                     0238   277 

                                     0238   278 

                                     0238   279 

                                     0238   280 COND1::

                                 05  0238   281 	RSB				; RETURN TO MAIN ROUTINE

                                     0239   282 COND1_CLEANUP::

                                 05  0239   283 	RSB				; RETURN TO MAIN ROUTINE

                                     023A   284 COND2::

                                 05  023A   285 	RSB				; RETURN TO MAIN ROUTINE

                                     023B   286 COND2_CLEANUP::

                                 05  023B   287 	RSB				; RETURN TO MAIN ROUTINE

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page   9

1.0             CONDITION SUBROUTINES - SETUP AND CLEANUP                                                                        (1)



                                     023C   288 COND3::

   00000147'EF42 000000F3'8F     D1  023C   289 	CMPL	#SUBJPID,COND1_E[R2] 	; NON-ZERO PID SPECIFIED ?

                          20     13  0248   290 	BEQLU	10$			; YES -- PROCESS IS "OTHER"

                 00000189'EF43   D5  024A   291 	TSTL	COND2_E[R3]		; IS PROCESS NAME SPECIFIED ?

                          07     13  0251   292 	BEQL	5$			; NO -- SUBJECT PROCESS IS "SELF"

            02            54     D1  0253   293 	CMPL	R4,#2			; DOES CONDITION 3 SPECIFY DIFFERENT GROUP ?

                          20     13  0256   294 	BEQL	20$			; YES -- PROCESS NAME FOR DIFF GROUP IS CONF

                          10     11  0258   295 	BRB	10$			; NO -- MAKE SURE COND 3 SPECIFIES "OTHER"

                                     025A   296 5$:

                                     025A   297 ;

                                     025A   298 ; PROCESS IS "SELF"

                                     025A   299 ;

   00000226'EF44 00000000'EF     D1  025A   300 	CMPL	ONES,COND3_E[R4] 	; DOES CONDITION 3 SPECIFY "SELF" ?

                          1B     13  0266   301 	BEQLU	COND3X			; YES -- THEN ALL 3 CONDIT'NS ARE CONSISTENT

                          0E     11  0268   302 	BRB	20$			; NO -- INDICATE CONFLICT & GET OUT

                                     026A   303 10$:

                                     026A   304 ;

                                     026A   305 ; PROCESS IS "OTHER"

                                     026A   306 ;

   00000226'EF44 00000000'EF     D1  026A   307 	CMPL	ONES,COND3_E[R4] 	; DOES CONDITION 3 SPECIFY "SELF" ?

                          0B     12  0276   308 	BNEQU	COND3X			; NO -- THEN ALL 3 CONDITIONS ARE CONSISTENT

                                     0278   309 20$:

   00000000'EF   00000000'EF     90  0278   310 	MOVB	ONES,CONFLICT		; YES -- INDICATE CONFLICT

                                     0283   311 COND3X:

                                 05  0283   312 	RSB				; RETURN TO MAIN ROUTINE

                                     0284   313 COND3_CLEANUP::

                                 05  0284   314 	RSB				; RETURN TO MAIN ROUTINE

                                     0285   315 COND4::

                                 05  0285   316 	RSB				; RETURN TO MAIN ROUTINE

                                     0286   317 COND4_CLEANUP::

                                 05  0286   318 	RSB				; RETURN TO MAIN ROUTINE

                                     0287   319 COND5::

                                 05  0287   320 	RSB				; RETURN TO MAIN ROUTINE

                                     0288   321 COND5_CLEANUP::

                                 05  0288   322 	RSB				; RETURN TO MAIN ROUTINE

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page  10

1.0             FORM_CONDS                                                                                                       (1)



                                     0289   324 	.SBTTL	FORM_CONDS

                                     0289   325 ;++

                                     0289   326 ; FUNCTIONAL DESCRIPTION:

                                     0289   327 ;

                                     0289   328 ; 		FORM_CONDS FORMATS AND PRINTS INFORMATION ABOUT

                                     0289   329 ;  THE CURRENT ELEMENT IN EACH OF THE CONDITION TABLES.

                                     0289   330 ;

                                     0289   331 ; CALLING SEQUENCE:

                                     0289   332 ;

                                     0289   333 ;	BSBW FORM_CONDS

                                     0289   334 ;

                                     0289   335 ; INPUT PARAMETERS:

                                     0289   336 ;

                                     0289   337 ;	NONE

                                     0289   338 ;

                                     0289   339 ; IMPLICIT INPUTS:

                                     0289   340 ;

                                     0289   341 ;	R2,3,4,5,6 CONTAIN CURRENT CONDITION TABLE INDEX VALUES

                                     0289   342 ;	  FOR COND TABLES 1,2,3,4,5, RESPECTIVELY.

                                     0289   343 ;	FOR X = 1,2,3,4,5 :

                                     0289   344 ;		CONDX_T - TITLE TEXT FOR CONDX TABLE

                                     0289   345 ;		CONDX_TAB - ELEMENT TEXT FOR CONDX TABLE

                                     0289   346 ;		CONDX_C - CONTEXT OF THE CONDX TABLE

                                     0289   347 ;		CONDX_E - DATA ELEMENTS OF THE CONDX TABLE

                                     0289   348 ;

                                     0289   349 ; OUTPUT PARAMETERS:

                                     0289   350 ;

                                     0289   351 ;	NONE

                                     0289   352 ;

                                     0289   353 ; IMPLICIT OUTPUTS:

                                     0289   354 ;

                                     0289   355 ;	NONE

                                     0289   356 ;

                                     0289   357 ; COMPLETION CODES:

                                     0289   358 ;

                                     0289   359 ;	NONE

                                     0289   360 ;

                                     0289   361 ; SIDE EFFECTS:

                                     0289   362 ;

                                     0289   363 ;	NONE

                                     0289   364 ;

                                     0289   365 ;--

                                     0289   366 

                                     0289   367 

                                     0289   368 

                                     0289   369 FORM_CONDS::

                                     0289   370 	$FAO_S	MSG1_INP_CTL,FAO_LEN,FAO_DESC,TESTNUM

                                     02A8   371 					; FORMAT CONDITIONS HEADER MSG

                          FD55'  30  02A8   372 	BSBW	OUTPUT_MSG		; ... AND PRINT IT

            14            00     91  02AB   373 	CMPB	#COND1_C,#NULL		; IS CONDITION 1 NULL ?

                          03     12  02AE   374 	BNEQU	10$			; NO -- CONTINUE

                          00BF   31  02B0   375 	BRW	FORM_CONDSX		; YES -- SUBROUTINE IS FINISHED

                                     02B3   376 10$:

   00000000'EF   000000FC'EF     DE  02B3   377 	MOVAL	COND1_T,MSG_A		; SAVE ADDRESS OF CONDITION 1 TITLE FOR FAO

   00000000'EF   00000109'EF42   D0  02BE   378 	MOVL	COND1_TAB[R2],MSG_B 	; SAVE ADDR OF COND 1 CURR TEXT ELT FOR FAO

   00000000'EF            00     90  02CA   379 	MOVB	#COND1_C,MSG_CTXT 	; SAVE CONDITION 1 CONTEXT FOR FAO

                                     02D1   380 	MOV_VAL	COND1_C,COND1_E[R2],MSG_DATA1 ; GIVE COND 1 DATA VALUE TO FAO

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page  11

1.0             FORM_CONDS                                                                                                       (1)



                          FD2C'  30  02D1   381 	BSBW	WRITE_MSG2		; FORMAT AND WRITE CONDITION 1 MSG

            14            00     91  02D4   382 	CMPB	#COND2_C,#NULL		; IS CONDITION 2 NULL ?

                          03     12  02D7   383 	BNEQU	20$			; NO -- CONTINUE

                          0096   31  02D9   384 	BRW	FORM_CONDSX		; YES -- SUBROUTINE IS FINISHED

                                     02DC   385 20$:

   00000000'EF   00000153'EF     DE  02DC   386 	MOVAL	COND2_T,MSG_A		; SAVE ADDRESS OF CONDITION 2 TITLE FOR FAO

   00000000'EF   00000169'EF43   D0  02E7   387 	MOVL	COND2_TAB[R3],MSG_B 	; SAVE ADDR OF COND 2 CURR TEXT ELT FOR FAO

   00000000'EF            00     90  02F3   388 	MOVB	#COND2_C,MSG_CTXT 	; SAVE CONDITION 2 CONTEXT FOR FAO

                                     02FA   389 	MOV_VAL	COND2_C,COND2_E[R3],MSG_DATA1 ; GIVE COND 2 DATA VALUE TO FAO

                          FD03'  30  02FA   390 	BSBW	WRITE_MSG2		; FORMAT AND WRITE CONDITION 2 MSG

            14            00     91  02FD   391 	CMPB	#COND3_C,#NULL		; IS CONDITION 3 NULL ?

                          03     12  0300   392 	BNEQU	30$			; NO -- CONTINUE

                          006D   31  0302   393 	BRW	FORM_CONDSX		; YES -- SUBROUTINE IS FINISHED

                                     0305   394 30$:

   00000000'EF   00000191'EF     DE  0305   395 	MOVAL	COND3_T,MSG_A		; SAVE ADDRESS OF CONDITION 3 TITLE FOR FAO

   00000000'EF   0000019F'EF44   D0  0310   396 	MOVL	COND3_TAB[R4],MSG_B 	; SAVE ADDR OF COND 3 CURR TEXT ELT FOR FAO

   00000000'EF            00     90  031C   397 	MOVB	#COND3_C,MSG_CTXT 	; SAVE CONDITION 3 CONTEXT FOR FAO

                                     0323   398 	MOV_VAL	COND3_C,COND3_E[R4],MSG_DATA1 ; GIVE COND 3 DATA VALUE TO FAO

                          FCDA'  30  0323   399 	BSBW	WRITE_MSG2		; FORMAT AND WRITE CONDITION 3 MSG

            14            14     91  0326   400 	CMPB	#COND4_C,#NULL		; IS CONDITION 4 NULL ?

                          47     13  0329   401 	BEQLU	FORM_CONDSX		; YES -- SUBROUTINE IS FINISHED

   00000000'EF   0000023A'EF     DE  032B   402 	MOVAL	COND4_T,MSG_A		; SAVE ADDRESS OF CONDITION 4 TITLE FOR FAO

   00000000'EF   0000023A'EF45   D0  0336   403 	MOVL	COND4_TAB[R5],MSG_B 	; SAVE ADDR OF COND 4 CURR TEXT ELT FOR FAO

   00000000'EF            14     90  0342   404 	MOVB	#COND4_C,MSG_CTXT 	; SAVE CONDITION 4 CONTEXT FOR FAO

                                     0349   405 	MOV_VAL	COND4_C,COND4_E[R5],MSG_DATA1 ; GIVE COND 4 DATA VALUE TO FAO

                          FCB4'  30  0349   406 	BSBW	WRITE_MSG2		; FORMAT AND WRITE CONDITION 4 MSG

            14            14     91  034C   407 	CMPB	#COND5_C,#NULL		; IS CONDITION 5 NULL ?

                          21     13  034F   408 	BEQLU	FORM_CONDSX		; YES -- SUBROUTINE IS FINISHED

   00000000'EF   0000023B'EF     DE  0351   409 	MOVAL	COND5_T,MSG_A		; SAVE ADDRESS OF CONDITION 5 TITLE FOR FAO

   00000000'EF   0000023B'EF46   D0  035C   410 	MOVL	COND5_TAB[R6],MSG_B 	; SAVE ADDR OF COND 5 CURR TEXT ELT FOR FAO

   00000000'EF            14     90  0368   411 	MOVB	#COND5_C,MSG_CTXT 	; SAVE CONDITION 5 CONTEXT FOR FAO

                                     036F   412 	MOV_VAL	COND5_C,COND5_E[R6],MSG_DATA1 ; GIVE COND 5 DATA VALUE TO FAO

                          FC8E'  30  036F   413 	BSBW	WRITE_MSG2		; FORMAT AND WRITE CONDITION 5 MSG

                                     0372   414 FORM_CONDSX:

                                 05  0372   415 	RSB				; RETURN TO CALLER

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page  12

1.0             VERIFY                                                                                                           (1)



                                     0373   417 	.SBTTL	VERIFY

                                     0373   418 ;++

                                     0373   419 ; FUNCTIONAL DESCRIPTION:

                                     0373   420 ;

                                     0373   421 ;		VERIFY IS CALLED ONCE FOR EACH COMBINATION OF CONDITION

                                     0373   422 ; TABLE VALUES (AS DETERMINED BY THE INDEX REGISTERS R2,3,4,5,6 FOR

                                     0373   423 ; COND TABLES 1,2,3,4,5, RESPECTIVELY). VERIFY ESTABLISHES THE CONDITIONS

                                     0373   424 ; SPECIFIED BY THE COND TABLES AND ISSUES THE SUBJECT SYSTEM SERVICE

                                     0373   425 ; ($SETPRI). THEN, THE SUCCESSFUL OPERATION OF THE SERVICE IS VERIFIED

                                     0373   426 ; BY EXAMINING THE STATUS CODE RETURNED, THE VALUES FOR RETURN ARGUMENTS

                                     0373   427 ; AND THE FUNCTIONALITY PERFORMED. THE EXAMINATIONS TAKE THE FORM OF 

                                     0373   428 ; COMPARISONS AGAINST EXPECTED VALUES. ANY FAILING COMPARISON CAUSES AN

                                     0373   429 ; ERR_EXIT MACRO TO BE EXECUTED (EITHER DIRECTLY, OR INDIRECTLY,

                                     0373   430 ; THROUGH THE SS_CHECK MACRO); ERR_EXIT SETS EFLAG TO NON-ZERO,

                                     0373   431 ; PRINTS ERROR MESSAGES AND CAUSES AN IMMEDIATE RSB TO CALLER.

                                     0373   432 ; WHEN ERR_EXIT IS EXECUTED, FURTHER CALLS TO VERIFY ARE SUPPRESSED,

                                     0373   433 ; AND, AFTER EXECUTING CLEANUP SUBROUTINES, THE IMAGE EXITS.

                                     0373   434 ;

                                     0373   435 ; CALLING SEQUENCE:

                                     0373   436 ;

                                     0373   437 ;	BSBW VERIFY

                                     0373   438 ;

                                     0373   439 ; INPUT PARAMETERS:

                                     0373   440 ;

                                     0373   441 ;	NONE

                                     0373   442 ;

                                     0373   443 ; IMPLICIT INPUTS:

                                     0373   444 ;

                                     0373   445 ;	R2,3,4,5,6 CONTAIN CURRENT CONDITION TABLE INDEX VALUES

                                     0373   446 ;	  FOR COND TABLES 1,2,3,4,5, RESPECTIVELY.

                                     0373   447 ;	FOR X = 1,2,3,4,5 :

                                     0373   448 ;		CONDX_E - ADDRESS OF TABLE OF DATA VALUES FOR CONDX

                                     0373   449 ;		  TABLE. IF THE CONTEXT OF TABLE X IS A SYSTEM SERVICE

                                     0373   450 ;		  ARGUMENT, THE ARGUMENT NAME MAY BE USED AS A SYNONYM

                                     0373   451 ;		  FOR CONDX_E.

                                     0373   452 ;

                                     0373   453 ; OUTPUT PARAMETERS:

                                     0373   454 ;

                                     0373   455 ;	NONE

                                     0373   456 ;

                                     0373   457 ; IMPLICIT OUTPUTS:

                                     0373   458 ;

                                     0373   459 ;	VERIFY HAS NO OUTPUT. SINCE ITS PURPOSE IS TO TEST FOR ERRORS,

                                     0373   460 ;	IT MERELY RETURNS TO CALLER NORMALLY AFTER THE TESTS, PROVIDING

                                     0373   461 ;	ALL WERE SUCCESSFUL; IF AN ERROR IS DISCOVERED, RETURN IS VIA

                                     0373   462 ;	AN ERR_EXIT OR SS_CHECK MACRO, BOTH OF WHICH DOCUMENT DETECTED

                                     0373   463 ;	ERRORS.

                                     0373   464 ;

                                     0373   465 ; COMPLETION CODES:

                                     0373   466 ;

                                     0373   467 ;	EFLAG SET TO NON-ZERO IF ERROR ENCOUNTERED.

                                     0373   468 ;

                                     0373   469 ; SIDE EFFECTS:

                                     0373   470 ;

                                     0373   471 ;	SS_CHECK AND ERR_EXIT MACROS CAUSE PREMATURE EXIT 

                                     0373   472 ;	(VIA RSB) IF ERROR ENCOUNTERED.

                                     0373   473 ;

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page  13

1.0             VERIFY                                                                                                           (1)



                                     0373   474 ;--

                                     0373   475 

                                     0373   476 

                                     0373   477 

                                     0373   478 VERIFY::

                 00000000'EF     95  0373   479 	TSTB	CFLAG			; SHOULD CONDITIONS BE PRINTED ?

                          03     13  0379   480 	BEQL	5$			; NO -- CONTINUE

                          FF0B   30  037B   481 	BSBW	FORM_CONDS		; YES -- FMT & PRINT ALL CONDS FOR THIS T.C.

                                     037E   482 5$:

   000000F3'EF   000000EB'EF     D0  037E   483 	MOVL	SELFPID,SUBJPID		; ASSUME THE SUBJECT PID IS SELF

                 000000E7'EF     D4  0389   484 	CLRL	ZEROPID			; CLEAR ZERO PID

   00000226'EF44 00000000'EF     D1  038F   485 	CMPL	ONES,COND3_E[R4] 	; IS PROCESS FOR THIS TEST CASE SELF ?

                          03     12  039B   486 	BNEQU	7$			; NO -- CONTINUE

                          0072   31  039D   487 	BRW	10$			; YES -- DON'T CREATE A PROCESS

                                     03A0   488 7$:

                                     03A0   489 	$CREPRC_S PIDADR=CREPID, PRCNAM=SUBJPRN, -

                                     03A0   490 		  UIC=COND3_E[R4], IMAGE=IMAGNAM, -

                                     03A0   491 		  MBXUNT=MBXUNIT, QUOTA=QUOTALIST

                                     03D9   492 					; CREATE THE SUBJECT PROCESS

                                     03D9   493 	SS_CHECK NORMAL			; ... AND MAKE SURE IT CREATED OK

   000000F3'EF   000000EF'EF     D0  0407   494 	MOVL	CREPID,SUBJPID		; MAKE THE SUBJCT PID = THE ONE JUST CREATED

                                     0412   495 10$:

                                     0412   496 	$SETPRI_S PIDADR=SUBJPID, PRI=#0, -

                                     0412   497 		  PRVPRI=ORIGPRI 	; GET ORIGINAL PRIORITY

                                     0429   498 	SS_CHECK  NORMAL		; CHECK FOR NORMAL RETURN

                                     0457   499 	$SETPRI_S PIDADR=SUBJPID, PRI=ORIGPRI ; RESTORE ORIGINAL PRIORITY

                                     046E   500 	SS_CHECK NORMAL			; CHECK FOR NORMAL RETURN

   000000E3'EF   00000147'EF42   D0  049C   501 	MOVL	COND1_E[R2],DEST_PIDADR ; GET PID ADDRESS OUT OF TABLE

            59   00000189'EF43   D0  04A8   502 	MOVL	COND2_E[R3],R9		; PRCNAM ADDR INTO REG FOR INDIRECT REF'RNCE

                          58     D4  04B0   503 	CLRL	R8			; INITIALIZE PRIORITY VALUE REGISTER

                                     04B2   504 15$:

                 000000E7'EF     D4  04B2   505 	CLRL	ZEROPID			; ENSURE ZEROPID IS STILL ZERO

                                     04B8   506 ;

                                     04B8   507 ; ****** SYSTEM SERVICE CALL WHICH IS THE SUBJECT OF THIS TEST CASE ******

                                     04B8   508 ;

                                     04B8   509 	$SETPRI_S PIDADR=@DEST_PIDADR, PRCNAM=(R9), -

                                     04B8   510 		  PRI=R8, PRVPRI=ESTPRI

   00000000'8F            50     D1  04CF   511 	CMPL	R0,#SS$_NORMAL		; CODE RECEIVED = CODE EXPECTED ?

                          61     13  04D6   512 	BEQLU	18$			; YES -- CONTINUE

   00000000'EF   00000000'8F     D0  04D8   513 	MOVL	#SS$_NORMAL,EXPV 	; NO -- LOAD UP EXPECTED AND ...

   00000000'EF            50     D0  04E3   514 	MOVL	R0,RECV			; ... RECEIVED VALUES, THEN EXIT

                                     04EA   515 	ERR_EXIT LONG,<INCORRECT STATUS CODE RETURNED FROM SETPRI>

                                     0539   516 18$:

                 000000E3'EF     D5  0539   517 	TSTL	DEST_PIDADR		; PID RETURNED BY SETPRI ?

                          68     13  053F   518 	BEQL	20$			; NO -- KEEP GOING

   000000E3'FF   000000F3'EF     D1  0541   519 	CMPL	SUBJPID,@DEST_PIDADR 	; YES -- IS IT THE CORRECT ONE ?

                          5B     13  054C   520 	BEQL	20$			; YES -- CONTINUE

   00000000'EF   000000F3'EF     D0  054E   521 	MOVL	SUBJPID,EXPV		; NO --LOAD UP EXPECTED AND

   00000000'EF   000000E3'FF     D0  0559   522 	MOVL	@DEST_PIDADR,RECV 	; ... RECEIVED VALUES, THEN EXIT

                                     0564   523 	ERR_EXIT LONG,<INCORRECT PID RETURNED BY SETPRI>

                                     05A9   524 20$:

                          58     D5  05A9   525 	TSTL	R8			; SETTING PRIORITY 0 ?

                          09     12  05AB   526 	BNEQ	40$			; NO -- CONTINUE

            5A   000000F7'EF     90  05AD   527 	MOVB	ORIGPRI,R10		; YES -- EXPECT ORIGINAL PRIORITY RETURNED

                          04     11  05B4   528 	BRB	42$			; .......

                                     05B6   529 40$:

            58            01     83  05B6   530 	SUBB3	#1,R8,R10		; COMPUTE EXPECTED PRIORITY TO BE RETURNED

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page  14

1.0             VERIFY                                                                                                           (1)



                          5A         05B9       

                                     05BA   531 42$:

   000000FB'EF            5A     91  05BA   532 	CMPB	R10,ESTPRI		; IS ESTABLISHED PRIORITY = THAT EXPECTED ?

                          5C     13  05C1   533 	BEQLU	50$			; YES -- CONTINUE

   00000000'EF            5A     90  05C3   534 	MOVB	R10,EXPV		; NO -- LOAD UP EXPECTED AND

   00000000'EF   000000FB'EF     90  05CA   535 	MOVB	ESTPRI,RECV		; ... RECEIVED VALUES, THEN EXIT

                                     05D5   536 	ERR_EXIT BYTE,<PRIORITY VALUE NOT RETAINED BY SETPRI>

                                     061F   537 50$:

            01            1F     9D  061F   538 	ACBB	#31,#1,R8,15$		; LOOP THRU ALL LEGAL PRIORITIES

            FE8D          58         0622       

                                     0625   539 	$SETPRI_S PIDADR=SUBJPID, PRI=ORIGPRI, -

                                     0625   540 		  PRVPRI=ESTPRI		; GET BACK ORIGINAL PRIORITY

                                     0640   541 	SS_CHECK NORMAL			; CHECK FOR NORMAL RETURN

   000000FB'EF            1F     91  066E   542 	CMPB	#31,ESTPRI		; DID SETPRI REMEMBER PREVIOUS PRI (31) ?

                          5C     13  0675   543 	BEQLU	60$			; YES -- CONTINUE

   00000000'EF            1F     90  0677   544 	MOVB	#31,EXPV		; NO -- LOAD UP EXPECTED AND

   00000000'EF   000000FB'EF     90  067E   545 	MOVB	ESTPRI,RECV		; ... RECEIVED VALUES, THEN EXIT

                                     0689   546 	ERR_EXIT BYTE,<PRIORITY VALUE NOT RETAINED BY SETPRI>

                                     06D3   547 60$:

   000000F3'EF   000000EF'EF     D1  06D3   548 	CMPL	CREPID,SUBJPID		; WAS A PROCESS CREATED ?

                          03     13  06DE   549 	BEQLU	65$			; YES -- CONTINUE

                          0094   31  06E0   550 	BRW	VERIFYX			; NO -- ALL FINISHED

                                     06E3   551 65$:

                                     06E3   552 	$WAKE_S	SUBJPID			; ALLOW CREATED PROCESS TO FINISH

                                     06F2   553 	SS_CHECK NORMAL			; CHECK FOR NORMAL STATUS CODE

                                     0720   554 	$QIOW_S	CHAN=MBXCHAN, FUNC=#IO$_READVBLK, -

                                     0720   555 		P1=MBXBUFF+8, P2=MBXBUFF

                                     0749   556 					; ... AND  WAIT FOR IT TO SEND MAIL

                                     0749   557 	SS_CHECK NORMAL			; CHECK FOR NORMAL STATUS CODE

                                     0777   558 VERIFYX:

                                 05  0777   559 	RSB				; RETURN TO CALLER

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page  15

1.0             VFY_CLEANUP                                                                                                      (1)



                                     0778   561 	.SBTTL	VFY_CLEANUP

                                     0778   562 ;++

                                     0778   563 ; FUNCTIONAL DESCRIPTION:

                                     0778   564 ;

                                     0778   565 ;		VFY_CLEANUP EXECUTES SYSTEM SERVICES TO UNDO THE

                                     0778   566 ; EFFECT OF THOSE ISSUED IN THE VERIFY SUBROUTINE. VFY_CLEANUP MUST

                                     0778   567 ; ASSUME THAT VERIFY MAY NOT HAVE EXECUTED IN ITS ENTIRETY (IF AN

                                     0778   568 ; ERROR IS FOUND). ALSO, VFY_CLEANUP MAY ISSUE SS_CHECK OR ERR_EXIT

                                     0778   569 ; ONLY AFTER PERFORMING ALL OF ITS CLEANUP OPERATIONS; THIS IS REQUIRED

                                     0778   570 ; IN THE EVENT THAT VFY_CLEANUP IS CALLED DURING ERROR PROCESSING,

                                     0778   571 ; WHEN PERFORMING THE REQUIRED CLEANUP IS MORE IMPORTANT THAN

                                     0778   572 ; POSSIBLY DISCOVERING A SECOND ERROR.

                                     0778   573 ;

                                     0778   574 ; CALLING SEQUENCE:

                                     0778   575 ;

                                     0778   576 ;	BSBW VFY_CLEANUP

                                     0778   577 ;

                                     0778   578 ; INPUT PARAMETERS:

                                     0778   579 ;

                                     0778   580 ;	NONE

                                     0778   581 ;

                                     0778   582 ; IMPLICIT INPUTS:

                                     0778   583 ;

                                     0778   584 ;	R2,3,4,5,6 CONTAIN CURRENT CONDITION TABLE INDEX VALUES

                                     0778   585 ;	  FOR COND TABLES 1,2,3,4,5, RESPECTIVELY.

                                     0778   586 ;	FOR X = 1,2,3,4,5 :

                                     0778   587 ;		CONDX_E - ADDRESS OF TABLE OF DATA VALUES FOR CONDX

                                     0778   588 ;		  TABLE. IF THE CONTEXT OF TABLE X IS A SYSTEM SERVICE

                                     0778   589 ;		  ARGUMENT, THE ARGUMENT NAME MAY BE USED AS A SYNONYM

                                     0778   590 ;		  FOR CONDX_E.

                                     0778   591 ;

                                     0778   592 ; OUTPUT PARAMETERS:

                                     0778   593 ;

                                     0778   594 ;	NONE

                                     0778   595 ;

                                     0778   596 ; IMPLICIT OUTPUTS:

                                     0778   597 ;

                                     0778   598 ;	NONE

                                     0778   599 ;

                                     0778   600 ; COMPLETION CODES:

                                     0778   601 ;

                                     0778   602 ;	EFLAG SET TO NON-ZERO IF ERROR ENCOUNTERED.

                                     0778   603 ;

                                     0778   604 ; SIDE EFFECTS:

                                     0778   605 ;

                                     0778   606 ;	SS_CHECK AND ERR_EXIT MACROS CAUSE PREMATURE EXIT 

                                     0778   607 ;	(VIA RSB) IF ERROR ENCOUNTERED.

                                     0778   608 ;

                                     0778   609 ;--

                                     0778   610 

                                     0778   611 

                                     0778   612 

                                     0778   613 VFY_CLEANUP::

   000000F3'EF   000000EF'EF     D1  0778   614 	CMPL	CREPID,SUBJPID		; WAS A PROCESS CREATED FOR THIS TEST CASE ?

                          11     12  0783   615 	BNEQU	10$			; NO -- DON'T DELETE IT

                                     0785   616 	$DELPRC_S SUBJPID		; YES -- DELETE IT

                          52     11  0794   617 	BRB	VFY_CLEANUPX		; ... AND GET OUT

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page  16

1.0             VFY_CLEANUP                                                                                                      (1)



                                     0796   618 10$:

   000000F7'EF   00000000'EF     91  0796   619 	CMPB	ONES,ORIGPRI		; WAS ORIGINAL PRIORITY EVER CHANGED ?

                          45     13  07A1   620 	BEQLU	VFY_CLEANUPX		; NO -- CLEANUP IS COMPLETE

                                     07A3   621 	$SETPRI_S PIDADR=SUBJPID, PRI=ORIGPRI ; YES -- GET BACK ORIGINAL

                                     07BA   622 	SS_CHECK NORMAL			; CHECK FOR NORMAL RETURN

                                     07E8   623 VFY_CLEANUPX:

   000000F7'EF   00000000'EF     90  07E8   624 	MOVB	ONES,ORIGPRI		; INDICATE PRI NOT CHANGED YET FOR NEXT T.C.

                                 05  07F3   625 	RSB				; RETURN TO CALLER

                                     07F4   626 	.END

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page  17

SYMBOL TABLE                                                                                                                     (1)



$$$$           = 00000693 R     05   DIB$B_DEVCLASS   00000004            PCB$L_EFWM       0000004C            

$$$CHARS       = 00000025            DIB$B_DEVTYPE    00000005            PCB$L_OWNER      0000001C            

$$$CHARS1      = 00000004            DIB$C_LENGTH     00000024            PCB$L_PHD        00000064            

$$$CHARS2      = 0000000A            DIB$K_LENGTH     00000024            PCB$L_PHYPCB     00000018            

$$$CHARS3      = 00000019            DIB$L_DEVCHAR    00000000            PCB$L_PID        00000060            

$$$CHARS4      = 00000021            DIB$L_DEVDEPEND  00000008            PCB$L_PQB        0000004C            

$$$CHARS5      = 00000026            DIB$L_OPCNT      0000001C            PCB$L_SQBL       00000004            

$$$COND_A      = 00000004            DIB$L_OWNUIC     00000014            PCB$L_SQFL       00000000            

$$$STRINGS     = 00000001            DIB$L_PID        00000010            PCB$L_STS        00000028            

$$$STRINGS2    = 00000005            DIB$W_DEVBUFSIZ  00000006            PCB$L_UIC        00000020            

$$T1           = 00000001            DIB$W_DEVNAMOFF  0000000E            PCB$L_WSSWP      00000024            

$$T2           = 00000004            DIB$W_ERRCNT     0000001A            PCB$L_WTIME      0000002C            

BIT...         = 00000018            DIB$W_RECSIZ     00000022            PCB$T_LNAME      0000006C            

BYTE           = 00000001  G         DIB$W_UNIT       0000000C            PCB$V_ASTPEN   = 00000011            

CFLAG            ********   X   05   DIB$W_VOLNAMOFF  00000020            PCB$V_BATCH    = 0000000E            

CHMRTN           ********   X   05   DIB$W_VPROT      00000018            PCB$V_DELPEN   = 00000001            

CHM_CONT         ********   X   05   EFLAG            ********   X   05   PCB$V_FORCPEN  = 00000002            

COMP_SC          ********   X   05   ESTPRI           000000FB R     04   PCB$V_HIBER    = 00000013            

COND1            00000238 RG    05   EXPV             ********   X   05   PCB$V_INQUAN   = 00000003            

COND1_C        = 00000000            FAO_DESC         ********   X   05   PCB$V_LOGIN    = 00000014            

COND1_CLEANUP    00000239 RG    05   FAO_LEN          ********   X   05   PCB$V_NETWRK   = 00000015            

COND1_E          00000147 R     04   FORM_CONDS       00000289 RG    05   PCB$V_NOACNT   = 0000000F            

COND1_H          00000108 RG    04   FORM_CONDSX      00000372 R     05   PCB$V_NODELET  = 00000017            

COND1_T          000000FC R     04   GBL...         = 00000000            PCB$V_PHDRES   = 00000012            

COND1_TAB        00000109 R     04   IMAGNAM          00000065 R     03   PCB$V_PSWAPM   = 00000004            

COND2            0000023A RG    05   IO$_READVBLK     ********   X   05   PCB$V_PWRAST   = 00000016            

COND2_C        = 00000000            LONG           = 00000004  G         PCB$V_RES      = 00000000            

COND2_CLEANUP    0000023B RG    05   MBXBUFF          00000063 R     04   PCB$V_RESPEN   = 00000005            

COND2_E          00000189 R     04   MBXCHAN          00000008 R     04   PCB$V_SSFEXC   = 00000006            

COND2_H          00000168 RG    04   MBXCHANINFO      0000000C R     04   PCB$V_SSFEXCE  = 00000007            

COND2_T          00000153 R     04   MBXUNIT          0000005F R     04   PCB$V_SSFEXCS  = 00000008            

COND2_TAB        00000169 R     04   MOD_MSG_CODE     ********   X   05   PCB$V_SSFEXCU  = 00000009            

COND3            0000023C RG    05   MOD_MSG_PRINT    ********   X   05   PCB$V_SSRWAIT  = 0000000A            

COND3X           00000283 R     05   MSG1_INP_CTL     00000019 R     03   PCB$V_SUSPEN   = 0000000B            

COND3_C        = 00000000            MSG3_ERR_CTL     00000039 RG    03   PCB$V_SWPVBN   = 00000010            

COND3_CLEANUP    00000284 RG    05   MSG_A            ********   X   05   PCB$V_WAKEPEN  = 0000000C            

COND3_E          00000226 R     04   MSG_B            ********   X   05   PCB$V_WALL     = 0000000D            

COND3_H          0000019E RG    04   MSG_CTXT         ********   X   05   PCB$W_APTCNT     00000034            

COND3_T          00000191 R     04   NOTARG         = 00000000  G         PCB$W_ASTCNT     0000003C            

COND3_TAB        0000019F R     04   NULL           = 00000014  G         PCB$W_BIOCNT     0000003E            

COND4            00000285 RG    05   ONES             ********   X   05   PCB$W_BIOLM      00000040            

COND4_C        = 00000014            ORIGPRI          000000F7 R     04   PCB$W_BYTCNT     00000042            

COND4_CLEANUP    00000286 RG    05   OUTPUT_MSG       ********   X   05   PCB$W_BYTLM      00000068            

COND4_H          0000023A RG    04   PCB$B_ASTACT     0000000C            PCB$W_DIOCNT     00000044            

COND4_T          0000023A R     04   PCB$B_ASTEN      0000000D            PCB$W_DIOLM      00000046            

COND4_TAB        0000023A R     04   PCB$B_PRI        0000000B            PCB$W_FILCNT     00000048            

COND5            00000287 RG    05   PCB$B_PRIB       00000033            PCB$W_GPGCNT     00000038            

COND5_C        = 00000014            PCB$B_TYPE       0000000A            PCB$W_GRP        00000022            

COND5_CLEANUP    00000288 RG    05   PCB$B_WEFC       00000032            PCB$W_MEM        00000020            

COND5_H          0000023B RG    04   PCB$C_LENGTH     0000007C            PCB$W_MTXCNT     0000000E            

COND5_T          0000023B R     04   PCB$K_LENGTH     0000007C            PCB$W_PPGCNT     0000003A            

COND5_TAB        0000023B R     04   PCB$L_ASTQBL     00000014            PCB$W_PRCCNT     0000006A            

CONFLICT         ********   X   05   PCB$L_ASTQFL     00000010            PCB$W_SIZE       00000008            

CREPID           000000EF R     04   PCB$L_EFC2P      00000058            PCB$W_STATE      00000030            

CTL$GL_PHD       ********   X   05   PCB$L_EFC3P      0000005C            PCB$W_TMBU       00000036            

DESC           = 00000010  G         PCB$L_EFCS       00000050            PCB$W_TQCNT      0000004A            

DEST_PIDADR      000000E3 R     04   PCB$L_EFCU       00000054            PCV              ********   X   05   

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page  18

SYMBOL TABLE                                                                                                                     (1)



PHD$B_ASTLVL     000000CF            PHD$V_PFMFLG   = 00000000            PRV$V_NOACNT   = 00000009            

PHD$B_DFPFC      00000038            PHD$V_WSPEAKCHK= 00000002            PRV$V_OPER     = 00000012            

PHD$B_PAGFIL     0000001F            PHD$W_ASTLM      00000044            PRV$V_PHY_IO   = 00000016            

PHD$B_PGTBPFC    00000039            PHD$W_BAK        00000048            PRV$V_PRMCEB   = 0000000A            

PHD$C_LENGTH     00000118            PHD$W_DFWSCNT    0000001A            PRV$V_PRMGBL   = 00000018            

PHD$C_PHDPAGCTX= 00000008            PHD$W_EMPTPG     000000D8            PRV$V_PRMMBX   = 0000000B            

PHD$K_LENGTH     00000118            PHD$W_EXTDYNWS   00000076            PRV$V_PSWAPM   = 0000000C            

PHD$L_BIOCNT     00000054            PHD$W_FILLM      00000060            PRV$V_SETPRI   = 0000000D            

PHD$L_CPULIM     00000058            PHD$W_FLAGS      0000003A            PRV$V_SETPRV   = 0000000E            

PHD$L_CPUTIM     0000003C            PHD$W_PHVINDEX   00000046            PRV$V_SYSGBL   = 00000019            

PHD$L_DIOCNT     00000050            PHD$W_PRCLM      00000042            PRV$V_SYSNAM   = 00000002            

PHD$L_ESP        0000007C            PHD$W_PST        00000020            PRV$V_TMPMBX   = 0000000F            

PHD$L_FREP0VA    00000028            PHD$W_PSTBASMAX  0000004A            PRV$V_VOLPRO   = 00000015            

PHD$L_FREP1VA    00000030            PHD$W_PSTFREE    00000026            PRV$V_WORLD    = 00000010            

PHD$L_FREPTECNT  0000002C            PHD$W_PSTLAST    00000024            QUAD           = 00000008  G         

PHD$L_KSP        00000078            PHD$W_PTCNTACT   00000070            QUOTALIST        00000084 R     03   

PHD$L_P0BR       000000C8            PHD$W_PTCNTLCK   0000006C            RECV             ********   X   05   

PHD$L_P0LRASTL   000000CC            PHD$W_PTCNTMAX   00000072            REST_REGS        ********   X   05   

PHD$L_P1BR       000000D0            PHD$W_PTCNTVAL   0000006E            SAVE_REGS        ********   X   05   

PHD$L_P1LR       000000D4            PHD$W_QUANT      00000040            SCH$GL_CURPCB    ********   X   05   

PHD$L_PAGEFLTS   0000004C            PHD$W_TQLM       00000062            SELFPID          000000EB R     04   

PHD$L_PAGFIL     0000001C            PHD$W_WSAUTH     0000000A            SS$_NORMAL       ********   X   05   

PHD$L_PC         000000C0            PHD$W_WSDYN      0000000E            SUBJPID          000000F3 R     04   

PHD$L_PCB        00000078            PHD$W_WSFLUID    00000074            SUBJPRN          00000051 R     03   

PHD$L_PGFLCNT    00000034            PHD$W_WSLAST     00000012            SUCCESS          ********   X   05   

PHD$L_PGFLQUOTA  0000005C            PHD$W_WSLIST     00000008            SYS$CMKRNL       ********   X   05   

PHD$L_PSL        000000C4            PHD$W_WSLOCK     0000000C            SYS$CREMBX       ********   X   05   

PHD$L_PSTBASOFF  00000020            PHD$W_WSLX       0000004A            SYS$CREPRC       ********   X   05   

PHD$L_PTWSLELCK  00000064            PHD$W_WSNEXT     00000010            SYS$DELMBX       ********   X   05   

PHD$L_PTWSLEVAL  00000068            PHD$W_WSQUOTA    00000018            SYS$DELPRC       ********   X   05   

PHD$L_R0         00000088            PQL$_ASTLM     = 00000001            SYS$FAO          ********   X   05   

PHD$L_R1         0000008C            PQL$_BIOLM     = 00000002            SYS$GETCHN       ********   X   05   

PHD$L_R10        000000B0            PQL$_BYTLM     = 00000003            SYS$HIBER        ********   X   05   

PHD$L_R11        000000B4            PQL$_CPULM     = 00000004            SYS$QIOW         ********   X   05   

PHD$L_R12        000000B8            PQL$_DIOLM     = 00000005            SYS$SETPRI       ********   X   05   

PHD$L_R13        000000BC            PQL$_FILLM     = 00000006            SYS$SETPRN       ********   X   05   

PHD$L_R2         00000090            PQL$_LENGTH    = 0000000C            SYS$WAKE         ********   X   05   

PHD$L_R3         00000094            PQL$_LISTEND   = 00000000            TESTNUM          ********   X   05   

PHD$L_R4         00000098            PQL$_PGFLQUOTA = 00000007            TEST_MOD_NAME    00000000 RG    03   

PHD$L_R5         0000009C            PQL$_PRCLM     = 00000008            TEST_MOD_NAME_D  00000009 R     03   

PHD$L_R6         000000A0            PQL$_TQELM     = 00000009            TEST_MOD_SUCC    ********   X   05   

PHD$L_R7         000000A4            PQL$_WSDEFAULT = 0000000B            TMD_ADDR         ********   X   05   

PHD$L_R8         000000A8            PQL$_WSQUOTA   = 0000000A            TM_CLEANUP       00000226 RG    05   

PHD$L_R9         000000AC            PRIVMASK         00000000 R     04   TM_SETUP         00000000 RG    05   

PHD$L_REFERFLT   00000014            PROCESS_ERR      ********   X   05   VERIFY           00000373 RG    05   

PHD$L_SSP        00000080            PRV$V_ALLSPOOL = 00000004            VERIFYX          00000777 R     05   

PHD$L_USP        00000084            PRV$V_BUGCHK   = 00000017            VFY_CLEANUP      00000778 RG    05   

PHD$L_WSL        00000118            PRV$V_CMEXEC   = 00000001            VFY_CLEANUPX     000007E8 R     05   

PHD$M_DALCSTX  = 00000002            PRV$V_CMKRNL   = 00000000            WORD           = 00000002  G         

PHD$M_PFMFLG   = 00000001            PRV$V_DETACH   = 00000005            WRITE_MSG2       ********   X   05   

PHD$M_WSPEAKCHK= 00000004            PRV$V_DIAGNOSE = 00000006            ZEROPID          000000E7 R     04   

PHD$Q_PRIVMSK    00000000            PRV$V_EXQUOTA  = 00000013            

PHD$S_ASTLVL   = 00000008            PRV$V_GROUP    = 00000008            

PHD$S_P0LR     = 00000018            PRV$V_GRPNAM   = 00000003            

PHD$V_ASTLVL   = 00000018            PRV$V_LOG_IO   = 00000007            

PHD$V_DALCSTX  = 00000001            PRV$V_MOUNT    = 00000011            

PHD$V_P0LR     = 00000000            PRV$V_NETMBX   = 00000014            

SATSSS45        SATS SYSTEM SERVICE TESTS  $SETPRI (SUCC S.C.)   22-AUG-1978 04:08:24   VAX-11 MACRO X0.3-11               Page  19

PROGRAM SECTION SYNOPSIS                                                                                                         (1)







PROGRAM SECTION SYNOPSIS



.  ABS  .        00000000      00     NOPIC   USR   CON   ABS   LCL NOSHR NOEXE NORD  NOWRT BYTE  

. BLANK .        00000000      01     NOPIC   USR   CON   REL   LCL NOSHR   EXE   RD    WRT BYTE  

$ABS$            0000011C      02     NOPIC   USR   CON   ABS   LCL NOSHR   EXE   RD    WRT BYTE  

RODATA           000000A7      03     NOPIC   USR   CON   REL   LCL NOSHR NOEXE   RD  NOWRT LONG  

RWDATA           0000023C      04     NOPIC   USR   CON   REL   LCL NOSHR NOEXE   RD    WRT LONG  

SATSSS45         000007F4      05     NOPIC   USR   CON   REL   LCL NOSHR   EXE   RD    WRT BYTE  





THERE WERE NO ERRORS OR WARNINGS.

10092. BYTES LEFT IN FREE MEMORY POOL.

464. BYTES OF RECLAIMED MEMORY.

OBJ$:SATSSS45,LIS$:SATSSS45/-SP=EXECML$/ML,LIB$:SYSTST.MLB/ML,SRC$:SATSSS45

61 MLB DIR RDS - 888 GETS TO DEFINE 38 MACROS. 50 INTER. FILE WRITES. 

