C C *** EXECSYMB INCLUDE FILE *** C C MODIFICATION HISTORY: C C 10-FEB-1986 CREATED FROM CMDSYMB.INC C 14-FEB-1986 MODIFIED FOR GENERAL ITEM SELECTION C 05-MAR-1986 CHANGED STATUS HANDLING C 25-MAR-1986 CHANGED CHANNEL TO WORD FROM LONGWORD C 06-NOV-1986 ADDED USERNAME PARAMETER C 13-FEB-1987 ADDED DYNAMIC TIMEOUT PARAMETER C 16-JUN-1987 CHANGED LOGICAL*1 FLAGS TO BIT FLAGS C C THIS FILE REQUIRES USE OF SMBDEF.INC C INCLUDE 'SMBDEF.INC' C C DEFINE MAXIMUM STREAMS (LIMIT IS 16) C PARAMETER MAX_STREAMS=16 C C DEFINE STREAM CONTROL BLOCK C STRUCTURE /SCB/ INTEGER*4 PID INTEGER*4 REQUEST INTEGER*2 INDEX INTEGER*2 ITEMNO INTEGER*2 MBX_CHAN INTEGER*4 IOSB(2) INTEGER*4 STATUS INTEGER*4 ENTRY INTEGER*4 REQUEUE_TIME(2) INTEGER*4 DYNAMIC_TIME(2) INTEGER*2 DEVICE_NAME_LEN INTEGER*2 COM_FILE_LEN INTEGER*2 OURNAME_LEN INTEGER*2 SPOOLDIR_LEN INTEGER*2 FILESPEC_LEN INTEGER*2 QUEUENAME_LEN INTEGER*2 FID(3) INTEGER*2 POS(SMBMSG$K_MAX_ITEM_CODE-1) INTEGER*2 SIZE(SMBMSG$K_MAX_ITEM_CODE-1) BYTE ORDER(SMBMSG$K_MAX_ITEM_CODE) INTEGER*2 FLAGS CHARACTER*15 DEVICE_NAME UNION MAP CHARACTER*1024 MESSAGE CHARACTER*256 FILESPEC END MAP MAP CHARACTER*1280 MSG END MAP END UNION CHARACTER*256 COM_FILE CHARACTER*32 OURNAME CHARACTER*128 SPOOLDIR CHARACTER*28 FILEINFO CHARACTER*32 QUEUENAME CHARACTER*12 USERNAME END STRUCTURE C RECORD /SCB/ STREAM(0:MAX_STREAMS-1) C C Definition of FLAGS component of SCB, by bit number: C C name bit# mask value C ==== ==== ========== C BINARY 0 1 C DO_REQUEUE 1 2 C ENTERED 2 4 C PRINTQUEUE 3 8 C NULL 4 16 C ABORT 5 32 C CHECKPOINT 6 64 C COPYALL 7 128 C COPYFIRST 8 256 C DYNAMIC 9 512 C NO_PROCESSOR 10 1024 C EXITING 11 2048 C INTEGER*2 FLG_V_BINARY PARAMETER (FLG_V_BINARY=0) INTEGER*2 FLG_M_BINARY PARAMETER (FLG_M_BINARY=1) INTEGER*2 FLG_V_DO_REQUEUE PARAMETER (FLG_V_DO_REQUEUE=1) INTEGER*2 FLG_M_DO_REQUEUE PARAMETER (FLG_M_DO_REQUEUE=2) INTEGER*2 FLG_V_ENTERED PARAMETER (FLG_V_ENTERED=2) INTEGER*2 FLG_M_ENTERED PARAMETER (FLG_M_ENTERED=4) INTEGER*2 FLG_V_PRINTQUEUE PARAMETER (FLG_V_PRINTQUEUE=3) INTEGER*2 FLG_M_PRINTQUEUE PARAMETER (FLG_M_PRINTQUEUE=8) INTEGER*2 FLG_V_NULL PARAMETER (FLG_V_NULL=4) INTEGER*2 FLG_M_NULL PARAMETER (FLG_M_NULL=16) INTEGER*2 FLG_V_ABORT PARAMETER (FLG_V_ABORT=5) INTEGER*2 FLG_M_ABORT PARAMETER (FLG_M_ABORT=32) INTEGER*2 FLG_V_CHECKPOINT PARAMETER (FLG_V_CHECKPOINT=6) INTEGER*2 FLG_M_CHECKPOINT PARAMETER (FLG_M_CHECKPOINT=64) INTEGER*2 FLG_V_COPYALL PARAMETER (FLG_V_COPYALL=7) INTEGER*2 FLG_M_COPYALL PARAMETER (FLG_M_COPYALL=128) INTEGER*2 FLG_V_COPYFIRST PARAMETER (FLG_V_COPYFIRST=8) INTEGER*2 FLG_M_COPYFIRST PARAMETER (FLG_M_COPYFIRST=256) INTEGER*2 FLG_V_DYNAMIC PARAMETER (FLG_V_DYNAMIC=9) INTEGER*2 FLG_M_DYNAMIC PARAMETER (FLG_M_DYNAMIC=512) INTEGER*2 FLG_V_NO_PROCESSOR PARAMETER (FLG_V_NO_PROCESSOR=10) INTEGER*2 FLG_M_NO_PROCESSOR PARAMETER (FLG_M_NO_PROCESSOR=1024) INTEGER*2 FLG_V_EXITING PARAMETER (FLG_V_EXITING=11) INTEGER*2 FLG_M_EXITING PARAMETER (FLG_M_EXITING=2048) C C SUBPROCESS EXIT STATUS INFORMATION, BASE PRIORITY, HIBERNATE/WAKE C FLAGS, COMMAND STATUS INFORMATION C INTEGER*4 EXIT_MBX_UNIT,BASE_PRIO INTEGER*2 EXIT_MBX_CHAN,STAT_W_MBX_CHAN INTEGER*4 STATIOSB(2) LOGICAL*1 DO_HIBER,DO_WAKE CHARACTER*12 EXITBUF CHARACTER*10 STATBUF C C PUT SCB'S AND OTHER STUFF IN COMMON C COMMON /SCBCOM/ STREAM,EXIT_MBX_UNIT,EXIT_MBX_CHAN,STAT_W_MBX_CHAN, 1 STATIOSB,BASE_PRIO,DO_HIBER,DO_WAKE,EXITBUF,STATBUF C