User Tools

Site Tools


cdc:nos2.source:nam5871:hcriapr

HCRIAPR

Table Of Contents

  • [00012] PRGM HCRIAPR
  • [00061] PROC XTRACE
  • [00062] PROC BLINK
  • [00063] PROC OSCHAPP
  • [00064] PROC MGETS

Source Code

HCRIAPR.txt
  1. *DECK HCRIAPR
  2. USETEXT NIPDEF
  3. USETEXT
  4. USETEXT AHEADER
  5. USETEXT
  6. USETEXT PARAMS
  7. USETEXT SUPMSG
  8. USETEXT PT
  9. USETEXT AT
  10. USETEXT
  11. USETEXT ACNB
  12. PRGM HCRIAPR ; # SEND CR/IAP/R TO NVF #
  13. STARTIMS;
  14. #
  15. *1DC HCRIAPR
  16. *
  17. * 1. PROC NAME AUTHOR DATE
  18. * HCRIAPR A. BEN-ARTZI 82/05/05
  19. *
  20. * 2. FUNCTIONAL DESCRIPTION
  21. * SEND CR/IAP/R TO NVF
  22. *
  23. * 3. METHOD USED
  24. * SET UP APPLICATION BLOCK HEADER
  25. * SET UP CR/IAP/R FIELDS
  26. * QUEUE MESSAGE TO NVF-S ACB
  27. *
  28. * 4. ENTRY PARAMETERS
  29. * PARAMS1 - REASON CODE FOR THE REQUEST
  30. * PARAMS2 - APPLICATION CONNECTION NUMBER
  31. * PARAMS3 - APPLICATION NUMBER
  32. * PARAMS4 - ADDRESS OF ACNB
  33. * PARAMS7 - ADDRESS OF THE ABH IN CONACRQ
  34. * 0 FOR ICNAPA
  35. *
  36. * 5. EXIT PARAMETERS
  37. * NONE
  38. *
  39. * 6. COMDECKS CALLED AND SYMPL TEXTS USED
  40. * NIPDEF AHEADER PARAMS SUPMSG
  41. * PT AT ACNB
  42. *
  43. * 7. ROUTINES CALLED
  44. * XTRACE - TRACE PROCEDURE CALL
  45. * BLINK - LINK DATA BLOCK TO APPLICATION-S DATA RING
  46. * OSCHAPP - SCHEDULE APPLICATION
  47. * MGETS - GET A NEW BUFFER
  48. *
  49. * 8. DAYFILE MESSAGES AND OTHER IMPORTANT INFORMATION
  50. * THIS PROGRAM IS A SECONDARY OVERLAY CALLED BY HCSTTP.
  51. * W A R N I N G - THIS PROGRAM CANNOT EXCEED THE SECONDARY
  52. *CALL OSSIZE
  53. *
  54.  #
  55. STOPIMS;
  56. #
  57.   EXTERNAL VARIABLES
  58. #
  59. XREF
  60. BEGIN
  61. PROC XTRACE ; # DEBUG TRACE CALLS #
  62. PROC BLINK ; # LINK DATA TO APPLICATION"S ACB #
  63. PROC OSCHAPP; # SCHEDULE APPLICATION #
  64. PROC MGETS ; # GET A NEW BUFFER #
  65. LABEL RJMAIN;
  66. END
  67. #
  68.   INTERNAL VARIABLES
  69. #
  70. ITEM BUFADDR ; # BUFFER ADDRESS FOR THE CR/IAP/R #
  71. ITEM INDX ; # LOOP INDEX #
  72. ITEM EXTRA ; # WORDS ADDED FROM CONACRQ #
  73. BASED ARRAY WORDF[0:0] S(1);
  74. BEGIN
  75. ITEM WORD U(00,00,60);
  76. END
  77. #**********************************************************************#
  78. BEGIN
  79. CONTROL IFEQ DEBUG,1;
  80. XTRACE("HCRAP") ;
  81. CONTROL FI ;
  82. EXTRA = 0; # NO EXTRA WORDS TO BEGIN WITH #
  83. IF PARAMS7 NQ 0 # A CALL FROM CONACRQ #
  84. THEN
  85. BEGIN
  86. P<AHEADER> = PARAMS7; # MOVE AHEADER TO THE HEADER ADDRESS #
  87. EXTRA = ABHTLC[0] - RACRSIZE;
  88. END
  89. #
  90.   GET A BUFFER FOR MESSAGE
  91. #
  92. MGETS( LCRIAP + ABHSIZE + BLKHSIZE + EXTRA, BUFADDR , TRUE ) ;
  93. #
  94.   SET UP APPLICATION HEADER
  95. #
  96. P<AHEADER> = BUFADDR + BLKHSIZE ;
  97. ABHABT[0] = APPCMD ;
  98. ABHACT[0] = CT60TRANS ;
  99. ABHTLC[0] = LCRIAP + EXTRA;
  100. #
  101.   SET-UP THE MESSAGE ITSELF
  102. #
  103. P<ACNB> = PARAMS4 ;
  104. P<SUPMSG> = BUFADDR + ABHSIZE + BLKHSIZE ;
  105. P<SMNIP > = P<SUPMSG> ;
  106. # #
  107. PFCSFC[0] = CRIAP ;
  108. P<SMNVF> = P<SUPMSG> ;
  109. # #
  110. CRRIAP[0] = PARAMS1 ; # REASON CODE #
  111. CRACN [0] = PARAMS2 ; # APPLICATION CONNECTION NUMBER #
  112. CRIAN [0] = PARAMS3 ; # INITIAL APPLICATION NUMBER #
  113. CRRANM[0] = ACNBANM[0]; # APPLICATION TO BE CONNECTED #
  114. CRRHID[0] = ACNBHID[0]; # HOST ID (PREVIOUSLY STORED IN ACNB) #
  115. CRULID[0] = ACNBLID[0]; # LID OF THE OUTGOING CALL(PREV STORED)#
  116. IF EXTRA GR 0 # WORDS TO BE ADDED #
  117. THEN
  118. BEGIN
  119. P<WORDF> = 0;
  120. FOR INDX = 0 STEP 1 UNTIL EXTRA - 1
  121. DO
  122. BEGIN # MOVE EXTRA WORDS FROM CONACRQ TO #
  123. # CRIAP AREA #
  124. SPMWD[RCRIAPSZ + INDX] = WORD[PARAMS7 + RCRIAPSZ + INDX];
  125. END
  126. END
  127. #
  128.   AND LINK MESSAGE TO NVF
  129. #
  130. BLINK ( BUFADDR,ATACBA[NVFAN]) ; # QUEUE TO NVF #
  131. OSCHAPP (ATACBA[NVFAN]) ;
  132. GOTO RJMAIN ;
  133. END
  134. TERM
cdc/nos2.source/nam5871/hcriapr.txt ยท Last modified: 2023/08/05 17:22 by Site Administrator