TS/MP Pathsend and Server Programming Manual (G06.24+, H06.03+)
Examples
NonStop TS/MP Pathsend and Server Programming Manual–132500
B-5
Pathsend Requester Example
?PAGE "STRUCTURE NEEDED TO PROCESS ASSIGN MSGS"
?SECTION ASSIGN
! The following is used to process ASSIGN msgs:
STRUCT CI^ASSIGN (*); !ASSIGN msg
BEGIN !
 INT MSG^CODE; ![0] -2
 STRUCT LOGICALUNIT; !PARAMS to ASSIGN command
 BEGIN !
 STRING PROGNAMELEN, ![1]
 PROGNAME[0:30], !
 FILENAMELEN, ![17]
 FILENAME[0:30]; !
 END; !
 INT(32) FIELDMASK; ![33] bit mask to indicate
 !which fields were supplied
 !(1=supplied):
 ! .<0> = TANDEM-FILENAME
 ! .<1> = PRI-EXT-SIZE
 ! .<2> = SEC-EXT-SIZE
 ! .<3> = FILE-CODE
 ! .<4> = EXCLUSION-SIZE
 ! .<5> = ACCESS-SPEC
 ! .<6> = RECORD-SIZE
 ! .<7> = BLOCK-SIZE
 !
 STRUCT TANDEMFILENAME; ![35] TANDEM-FILENAME
 BEGIN !
 INT VOLUME[0:3], !
 SUBVOL[0:3], !
 DFILE [0:3]; !
 END; !
 !
 !CREATESPEC !
 !
 INT PRIMARYEXTENT, ![47]
 SECONDARYEXTENT, !
 FILECODE, !
 EXCLUSIONSPEC, ![50] %00 if shared
 ! %20 if exclusive
 ! %60 if protected
 !
 ACCESSSPEC, ![51] %0000 if I/O
 ! %2000 if input
 ! %4000 if output
 ![50-51] correspond to flag PARAM
 !of OPEN
 !
 RECORDSIZE, ![52]
 BLOCKSIZE; ![53]
END; ! ci ASSIGN ! !msg size = 108 bytes










