*DECK RELCONN USETEXT LLCB USETEXT NCNB USETEXT NCNT USETEXT NIPDEF USETEXT PARAMS USETEXT SUPMSG PROC RELCONN(LLCBA,TRIGER); # RELEASE ALL CONNECTIONS ON A LOGICAL LINK # STARTIMS; # *1DC RELCONN * * 1. PROC NAME AUTHOR DATE * RELCONN E.T. WAN 81/05/26 * * 2. FUNCTIONAL DESCRIPTION * THIS ROUTINE TERMINATES ALL CONNECTIONS ON A LOGICAL LINK. * * 3. METHOD USED * FOR EACH ACTIVE CONNECTION ON THE LOGICAL LINK, CALL NETWORK * CONNECTION STATE TABLE PROCESSOR TO TERMINATE THE CONNECTION. * * 4. ENTRY PARAMETERS * LLCBA ADDRESS OF LLCB * TRIGER TRIGER TO STATE TABLE PROCESSOR * * 5. EXIT PARAMETERS * NONE * * 6. COMDECKS CALLED * LLCB * NCNT * NIPDEF * * 7. ROUTINES AND OVERLAYS CALLED * NCSTTP NETWORK CONNECTION STATE TABLE PROCESSOR * XTRACE TRACE CALLS * * 8. DAYFILE MESSAGES * NONE * * # STOPIMS; # **** EXTERNAL ENTRY POINTS # XREF BEGIN LABEL RJMAIN; # RETURN ADDRESS IN OVLCALL # PROC NCSTTP; # NETWORK CONNECTION STATE TABLE PROCESSOR# PROC XTRACE; # TRACE CALLS # END # * LOCAL VARIABLES # ITEM CONN; # CONNECTION NUMBER # ITEM FIRSTCN; # FIRST CONNECTION NUMBER IN A NCNT # ITEM I; # LOOP CONTROL VARIABLE # ITEM J; # LOOP CONTROL VARIABLE # ITEM NNCNTE; # NUMBER OF ENTRIES IN NCNT # ITEM LLCBA ; # LLCB ADDRESS # ITEM TRIGER ; # TRIGER TO STATE TABLE PROCESSOR # #**********************************************************************# BEGIN #RELCONN# CONTROL IFEQ DEBUG,1; XTRACE("RCONN") ; CONTROL FI; P = LLCBA ; # LLCB # NNCNTE = NCNTSIZE - NCNTHSIZE; # NUMBER OF ENTRIES IN NCNT # FOR I = LLCBHSIZE STEP 1 UNTIL LLCBSIZE - LLCBHSIZE - 1 DO # CHECK EACH NCNT ADDRESS IN LLCB # BEGIN P = LLCBNCNT[I]; # NCNT ADDRESS # IF P NQ 0 # NCNT EXISTS # THEN BEGIN FIRSTCN = NCNTCI[0] * NNCNTE; # FIRST CONN NUMBER IN NCNT # FOR J = NCNTHSIZE STEP 1 WHILE J LQ NNCNTE AND LLCBNCNT[I] NQ 0 DO # CHECK EACH NCNB ADDRESS IN NCNT # BEGIN IF NCNTNCNB[J] NQ 0 # NCNB EXISTS # THEN BEGIN # IF THIS IS A PRU CONNECTION, SET THE NCNTREL BIT SO # # THE CONNECTION WILL BE RELEASED WHEN PIP SENDS NIP A # # RESPONSE WORKLIST (OP=3). # P = NCNTNCNB[J]; IF (NCNBID[0] EQ PCNBIDVALUE) OR (NCNBID[0] EQ LCNBIDVALUE) THEN BEGIN NCNTREL[J] = TRUE; # SET THE TO-BE-RELEASED FLAG # END CONN = FIRSTCN + J - NCNTHSIZE ; # CONNECTION NUMBER # # * CALL NETWORK CONNECTION STATE TABLE PROCESSOR TO TERMINATE * CONNECTION. TRIGGER IS 'LOGICAL LINK FAIL'. # NCSTTP(P,CONN,TRIGER,0); END END END END END # RELCONN # TERM