*DECK UPACNB3 
USETEXT ACNB
USETEXT NIPDEF
USETEXT PARAMS
USETEXT SUPMSG
USETEXT NCNB
USETEXT DEQCOM
PROC UPACNB3; 
STARTIMS; 
 #
*1DC  UPACNB3 
*     1. PROC NAME           AUTHOR              DATE 
*        UPACNB3             C. BITTNER          81/12/01 
* 
*     2. FUNCTIONAL DESCRIPTION 
*        UPDATE ACNB WITH INFORMATION FROM CON/REQ/N
* 
*     3. METHOD 
*        BASE CON/REQ/N 
*        UPDATE ACNB FROM CON/REQ/N TEXT
* 
*     4. ENTRY PARAMETERS 
*        PARAMS1 - ACNB ADDRESS 
*        PARAMS2 - SM BUFFER OF CON/REQ/N 
* 
*     5. EXIT PARAMETERS
*        PARAMS3 - REASON CODE FOR BAD INPUT CHARACTER TYPE 
* 
*     6. COMDECKS CALLED AND SYMPL TEXTS USED 
*        ACNB 
*        NIPDEF 
*        PARAMS 
*        SUPMSG 
*        NCNB 
* 
*     7. ROUTINES AND OVERLAYS CALLED 
*        XTRACE - RECORD PROCEDURE CALL 
* 
*     8. DAYFILE MESSAGES AND OTHER IMPORTANT INFORMATION 
*        THIS PROCEDURE IS CALLED BY SENDACC VIA HCSTTP.
* 
 #
STOPIMS;
  
# 
      EXTERNAL VARIABLES
# 
 XREF 
   BEGIN
   PROC XTRACE;              # RECORD PROCEDURE CALL                   #
   END
  
# 
      INTERNAL VARIABLES
# 
      ITEM BUFADDR;          # SM BUFFER ADDRESS                       #
  
#**********************************************************************#
  
      BEGIN 
  
      CONTROL IFEQ DEBUG,1; 
        XTRACE("UPAC3") ; 
      CONTROL FI; 
  
      BUFADDR = PARAMS2;     # SM BUFFER                               #
      P<ACNB> = PARAMS1;
      P<SUPMSG> = BUFADDR + BLKHSIZE + ABHSIZE;  # FWA OF CON/REQ/N    #
      P<NCNB> = ACNBNCNB[0];  # NCNB ADDRESS                           #
      IF P<NCNB> NQ 0 AND 
      (CONACT[0] LS CT60TRANS 
      OR CONACT[0] GQ ACTMAX
      OR (NCNBDT[0] EQ DT$INTE AND
         NOT (CONACT[0] EQ CT8ASCII OR CONACT[0] EQ CT12ASCII)) 
      OR (NCNBDT[0] EQ DT$INTA AND
         CONACT[0] EQ CT6DISPLAY) 
      OR (NCNBID[0] EQ NCNBIDVALUE AND
         NOT NCNBAA[0] AND CONACT[0] EQ CT60TRANS)) 
      THEN
        # 
           DT = 6 INTER HOST ACT MUST BE 2 OR 3 
           T-A CONNECTION ACT MUST BE 2,3 OR 4
        # 
        BEGIN                # BAD ACT                                 #
        PARAMS3 = RCB"CNB";  # REASON FOR BREAKING CONNECTION          #
        RETURN ;
        END 
      ELSE
        BEGIN 
        ACNBICT[0] = CONACT[0];  # UPDATE APPL INPUT CHAR TYPE         #
        ACNBALN[0] = CONALN[0];  # UPDATE APPL LIST NUMBER             #
        ACNBNXP[0] = CONNXP[0];  # NO TRANSP INPUT ALLOWED FLAG        #
        ACNBSCT[0] = CONSCT[0];  # UPDATE SCT BIT                      #
        RETURN ;
        END 
      END 
TERM
