1 /* Begin include file abs_request_dcls.incl.pl1 */
  2 
  3 /****^  HISTORY COMMENTS:
  4   1) change(86-02-19,Cox), approve(86-05-12,MCR7390), audit(86-05-12,Newcomb),
  5      install(86-06-30,MR12.0-1082):
  6      Initially written.
  7   2) change(86-06-20,Gilcrease), approve(86-06-20,MCR7390),
  8      audit(86-06-25,Lippard), install(86-06-30,MR12.0-1082):
  9                Make abs_request_info.attributes.truncate_absout known,
 10                for version 2 of the include file,
 11                to indicate -truncate .absout is implemented SCR6297.
 12   3) change(86-10-14,Lippard), approve(85-12-30,MCR7326),
 13      audit(86-10-27,GDixon), install(86-10-28,MR12.0-1200):
 14      Add comments describing each field.
 15   4) change(87-11-11,Parisek), approve(88-02-11,MCR7849),
 16      audit(88-05-04,Lippard), install(88-07-13,MR12.2-1047):
 17      Added the request_info version 3 elements init_proc, subsystem_name,
 18      home_dir, initial_ring, no_start_up.  Added the return_info version
 19      3 elements: error_msg, and abs_pathname. SCP6367.
 20   5) change(88-04-29,Parisek), approve(88-04-29,MCR7878),
 21      audit(88-05-04,Lippard), install(88-07-13,MR12.2-1047):
 22      A. Remove the must_use_search bit element.
 23      B. Replace the input_segment_entryname element with an unused pad
 24         field, as the input entryname will be located by enter_abs_request_
 25         and placed into the request header as request.request_header.ename.
 26                                                    END HISTORY COMMENTS */
 27 
 28 /* format: style2,^inddcls,ifthenstmt,ifthendo,^indnoniterdo,^inditerdo,ind3,idind32 */
 29 
 30 dcl     1 abs_request_info              structure aligned based (abs_request_info_ptr),
 31           2 version                     char (8) aligned,   /* version number of this structure */
 32           2 resource_length             fixed bin,          /* length of resource string */
 33           2 comment_length              fixed bin,          /* length of comment string */
 34           2 max_arg_length              fixed bin,          /* length of longest arg */
 35           2 arg_count                   fixed bin,          /* number of args */
 36           2 proxy_personid              char (22) aligned,  /* person ID of proxy user */
 37           2 proxy_projectid             char (9) aligned,   /* project ID of proxy user */
 38           2 queue                       char (4) aligned,   /* absentee queue */
 39           2 deferred_time               fixed bin (71),     /* time at which absentee is to run */
 40           2 max_cpu_time                fixed bin (35),     /* max CPU time for absentee process */
 41           2 requested_authorization     bit (72),           /* authorization at which absentee is to be logged in */
 42           2 input_segment_dirname       char (168) unaligned,/* pathname of absin segment */
 43           2 pad                         (8) fixed bin,      /* reserved */
 44           2 output_segment_dirname      char (168) unaligned,/* pathname of absout segment */
 45           2 output_segment_entryname    char (32) unaligned,
 46           2 attributes                  aligned,
 47             3 restartable               bit (1) unaligned,  /* True if this absentee may be restarted */
 48             3 user_deferred_indefinitely
 49                                         bit (1) unaligned,  /* True if this absentee is to be deferred indefinitely */
 50             3 secondary_ok              bit (1) unaligned,  /* True if it's OK for foreground job to be logged in without
 51                                                              primary status */
 52             3 truncate_absout           bit (1) unaligned,  /* True if absout is to be truncated before absentee runs */
 53             3 notify                    bit (1) unaligned,  /* True if submitter is to be notified when job starts and ends */
 54             3 no_start_up               bit (1) unaligned,
 55             3 attributes_mbz            bit (30) unaligned, /* must be zero */
 56           2 sender                      char (32),          /* submitter of absentee */
 57           2 initial_ring                fixed bin,          /* initial ring requested */
 58           2 home_dir                    char (64),          /* user's home dir */
 59           2 init_proc                   char (64),          /* login responder name */
 60 
 61           2 resource                    char (arqi_resource_length refer (abs_request_info.resource_length)),
 62                                                             /* any RCP resources required by the job */
 63           2 comment                     char (arqi_comment_length refer (abs_request_info.comment_length)),
 64                                                             /* comment field */
 65           2 arguments                   dimension (arqi_arg_count refer (abs_request_info.arg_count))
 66                                         char (arqi_max_arg_length refer (abs_request_info.max_arg_length)) varying;
 67                                                             /* additional arguments to absentee process */
 68 
 69 
 70 dcl     1 abs_return_info               structure aligned based (abs_return_info_ptr),
 71           2 version                     char (8) aligned,             /* version of this structure */
 72           2 request_id                  fixed bin (71),               /* request ID of the absentee job:
 73                                                                                 0 if not entered,
 74                                                                                 > 0 if entered */
 75           2 queue                       char (4) aligned,             /* queue the job is entered in */
 76           2 queue_requests_count        fixed bin (17),               /* total number of requests in the queue */
 77           2 error_msg                   char (256),                   /* Additional error message info */
 78           2 abs_pathname                char (168);                   /* Absolute absin pathname found via ec search paths */
 79 
 80 dcl     (abs_request_info_ptr, abs_return_info_ptr)
 81                                         ptr automatic;
 82 
 83 dcl     (
 84         ABSENTEE_REQUEST_INFO_VERSION_3 initial ("arqi_003"),
 85         ABSENTEE_RETURN_INFO_VERSION_3  initial ("arti_003")
 86         )                               char (8) internal static options (constant);
 87 
 88 /**** The following fields should be set before abs_request_info is allocated */
 89 dcl     arqi_resource_length            fixed bin;
 90 dcl     arqi_comment_length             fixed bin;
 91 dcl     arqi_max_arg_length             fixed bin;
 92 dcl     arqi_arg_count                  fixed bin;
 93 
 94 dcl     (
 95         BACKGROUND_QUEUE                dimension (0:4) init ("0", "1", "2", "3", "4"),
 96         FOREGROUND_QUEUE                init ("fg"),
 97         DEFAULT_QUEUE                   init ("dft")
 98         )                               char (4) aligned internal static options (constant);
 99 
100 /* End include file abs_request_dcls.incl.pl1 */