*DECK CSSRSS
USETEXT TEXTCS
USETEXT TEXTSS
USETEXT TXTAPSS
USETEXT TXTSUSS
USETEXT TXTSMCS
PROC CSSRSS;
# TITLE - ROUTE SOLICITED STATUS. #
BEGIN
#
** CSSRSS - ROUTE SOLICITED STATUS.
*
* D.K. ENDO 82/04/12
*
* THIS PROCEDURE ROUTES THE SOLICITED STATUS SM-S TO THE EVENT QUEUE
* WITH THE CN SET TO THE CURRENT STATUS OPERATOR FOR THE NPU.
*
* PROC CSSRSS
*
* ENTRY 1. ENTRY IN SOLICITED STATUS QUEUE.
*
* EXIT 2. ENTRY IN THE EVENT QUEUE.
*
#
#
**** PROC CSSRSS - XREF LIST BEGINS.
#
XREF
BEGIN
PROC CSSCSR; # COMPLETE STATUS REQUEST #
PROC SSTAQE; # ACCEPT QUEUE ENTRY #
PROC SSTRQE; # REMOVE QUEUE ENTRY #
END
#
****
#
ITEM I; # LOOP INDUCTION VARIABLE #
ITEM J; # LOOP INDUCTTION VARIABLE #
CONTROL EJECT;
# #
# CSSRSS CODE BEGINS HERE #
# #
#
* FOR EACH ENTRY IN THE SOLICITED STATUS QUEUE: SEARCH THE NPUCS-S
* FOR THE NPU THAT SENT THIS SM. IF FOUND, CHECK THE CURRENT STATUS
* OPERATOR FOR THIS NPU, AND IF SET, CHECK THE PFC VALUE. IF THE
* PFC IS -STU-, THEN SEND THE SM TO THE EVENT QUEUE WITH THE CN SET
* TO THE OCB ORDINAL FOR THIS OPERATOR, OTHRWISE IT MUST BE A NORMAL
* RESPONSE TO A STATUS REQUEST, SO CALL THE COMPLETE STATUS RESPONSE
* PROC.
#
FOR I=0 WHILE SSQL GR 0
DO
BEGIN
SSTRQE(P<SSQ>,WCBUF[0],ABH[0],CSSM[0]);
FOR J=0 STEP 1 WHILE ABHSN[0] NQ NPU$NID[J] AND
J LS CSNPCNT
DO
BEGIN
END
IF J LS CSNPCNT
THEN
BEGIN
IF PFC[0] EQ STU
THEN
BEGIN
IF NPU$OPST[J] GQ HOPORD$ AND
NPU$OPST[J] LQ MAXACN$
THEN
BEGIN
ABHCN[0] = NPU$OPST[J];
SSTAQE(P<EVQ>,WCBUF[0],ABH[0],CSSM[0]);
END
END
ELSE
BEGIN
CSSCSR;
END
END
END
RETURN; # **** RETURN **** #
END # CSSRSS #
TERM