*DECK BLDRMSG 
USETEXT COMCBEG 
USETEXT COMRAPL 
USETEXT COMRCON 
USETEXT COMRMEM 
USETEXT COMRNET 
USETEXT COMRQUE 
PROC BLDRMSG; 
# TITLE BLDRMSG - BUILD CONNECTION REQUEST MESSAGE. # 
  
      BEGIN  # BLDRMSG #
  
# 
**    BLDRMSG - BUILD CONNECTION REQUEST MESSAGE .
* 
*     BLDRMSG BUILDS THE CONNECTION REQUEST MESSAGE TO BE SENT TO THE 
*     REMOTE MAINFRAME. 
* 
*     PROC BLDRMSG. 
* 
*     ENTRY   -  QU$ADDRESS IS BASED ARRAY CONTAINING CON/ACRQ/R. 
*                  NET$HEADER IS BASED ARRAY FOR PID TO WHICH REQUEST 
*                    WILL BE MADE.
*                  LIDINDX IS ITEM DEFINING LID TO WHICH REQUEST WILL 
*                    BE MADE. 
*                  PTH$ENTRY IS BASED ARRAY DEFINING PATH TO PID TO 
*                    WHICH REQUEST WILL BE MADE.
*                  NAD$ENTRY IS BASED ARRAY FOR LOCAL NAD THROUGH WHICH 
*                    REQUEST WILL BE MADE.
*                  RMT$ENTRY IS BASED ARRAY FOR REMOTE NAD TO WHICH 
*                    REQUEST IS DIRECTED. 
*                  APL$HEADER IS BASED ARRAY FOR APPL MAKING REQUEST. 
* 
*     EXIT   -  CONNECTION REQUEST IS BUILT. IT RESIDES IN ARRAY
*                    CONREQUEST IN COMMON AREA COMRCON. 
* 
*     PROCESS -  CONVERT THE FOLLOWING TO ASCII AND STORE IN THE
*                    CONNECT MESSAGE: 
*                  REQUESTED APPLICATION NAME(ANAME1) 
*                  REQUESTING APPLICATION NAME(ANAME2)
*                  THIS MAINFRAME = PID 
*                  REQUESTED LID (OR PID IF LID IS 0).
*                STORE THE REMAINING FIELDS IN CONNECT MESSAGE. 
*                RETURN.
* 
* 
****  PROC BLDRMSG - XREF LIST BEGIN. 
# 
  
      XREF
        BEGIN 
        FUNC DCTOASC C(10);          # CONVERT DISPLAY CODE TO ASCII #
        ITEM PASSWD     C(7);        # INSTALLATION PASSWORD #
        END 
  
# 
****  PROC BLDRMSG - XRREF LIST END.
# 
  
  
      ITEM ANAME1 I;
      ITEM ANAME2 I;
  
      ARRAY [0:0] S(1); 
        BEGIN 
        ITEM PASSWORD   U(00,00,56);
        ITEM PASSWORDA  U(00,00,44);
        ITEM PASSWORDB  U(00,44,12);
        END 
  
CONTROL EJECT;
  
      CONRNADAD = RMT$NAD;
      CONRLTE    = PTH$LTE; 
      CONRDEST  = RMT$DEST; 
      CONRACCESS = PTH$ACCESS;
      CONRRTE   = PTH$RTE;
      CONRABNB  = QU$HDRABN;
      CONRABNA  = B<00,02> QU$HDRABN; 
      ANAME2    = DCTOASC(APL$NAME,7);
      PASSWORD = DCTOASC(PASSWD,7); 
      CONRPWA = PASSWORDA;
      CONRPWB = PASSWORDB;
  
      CONTROL IFEQ OS$NOSBE;
      IF QU$APLNAME  EQ  "FTFS" 
      THEN
        BEGIN  # SPECIAL CASE APPLICATION NAME FTFS # 
        QU$APLNAME = "PTFS";
        ANAME2  = DCTOASC("PTF",7); 
        END 
      CONTROL ENDIF;
  
      ANAME1    = DCTOASC(QU$APLNAME,7);
      CONRPID   = DCTOASC(THISPID,3); 
  
      IF QU$LID EQ 0
      THEN
        BEGIN  # LID NOT SPECIFIED BY APPL #
        CONRLID = DCTOASC(QU$PID,3);
        END 
  
      ELSE
        BEGIN  # LID WAS SPECIFIED #
        CONRLID = DCTOASC(QU$LID,3);
        END 
  
      CONRANAM1B = ANAME1;
      CONRANAM1A = B<04,24> ANAME1; 
      CONRANAM2B = ANAME2;
      CONRANAM2A = B<04,04> ANAME2; 
      END  # BLDRMSG #
  
      TERM
