diff options
Diffstat (limited to 'doc/rfc/rfc477.txt')
-rw-r--r-- | doc/rfc/rfc477.txt | 1067 |
1 files changed, 1067 insertions, 0 deletions
diff --git a/doc/rfc/rfc477.txt b/doc/rfc/rfc477.txt new file mode 100644 index 0000000..b2f9030 --- /dev/null +++ b/doc/rfc/rfc477.txt @@ -0,0 +1,1067 @@ + + + + + + +Network Working Group M. Krilanovich +Request for Comments: 477 UCSB +NIC: 14922 23 May 1973 +References: RFCs 354, 407, + NIC 16306 + + + Remote Job Service at UCSB + +Introduction + + This RFC is the follow-on document to RFC #436, which briefly + described UCSB'S RJS. This document restates the essence of the + official RJE protocol (RFC #407), and documents in detail UCSB's + implementation of it. + + The program described here is available under socket 5 at UCSB, and + supports a subset of the official protocol. Specifically, no checks + are made for RJE control cards in the input file, jobs may not be + batched in the input file, only output file dispositions of discard + and transmit-and-discard are implemented, no restart markers are sent + on output in FTP blocked mode, and several of the commands are not + implemented. There are also other ways in which RJS is known to be + less than ideal. For example, whenever any error is detected while + processing a job, such as the output's destination host being dead, + the job is abandoned, and any further output deleted. A re-write of + RJS is scheduled for the near future (in about six months), and many + of these deficiencies will be corrected at that time. (Any + suggestions for further improvements are more than welcome, and may + be made through the Journal to MCK, by mail to the author at the UCSB + Computer Center, or by telephone at (8O5) 961-3454.) + + In addition to the deviations from the protocol stated above, several + modifications have been made to increase user convience. + Specifically, the INACCT, OUTACCT, and ACCT commands have been added + to accommodate users of TENEX and other systems requiring an account + number, OUTPATH has been added as a synonym for OUT and INUSER for + INID, and the BYE command does not cause an ABORT. Also, in + recognition of the fact that the official protocol is biased heavily + toward use by programs, and is therefore rather cumbersome for human + users, an alternate, optional, command syntax has been provided. An + attempt was made to make this alternate syntax, called 'local + syntax', as 'natural' as possible to a human user. It also provides + some features not available with the standard syntax. + + + + + + + +Krilanovich [Page 1] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + +Service Provided + + The UCSB Computer Center operates an IBM 360/75 and runs OS MVT + release 21.0 and HASP. All batch jobs at UCSB enter the system + through HASP, and therefore RJS acts as an interface between the user + and HASP. RJS's function is to provide the user with a HASP virtual + RJE terminal, consisting of card reader, card punch, line printer and + operator's console, and to manage the first three of these for the + user in response to commands issued by him. By virtue of the fact + that RJS maintains the correspondence between a particular user and + the HASP RJE terminal owned by him, the user may issue commands to + alter the status of those jobs submitted by him through his RJE + terminal. This may be done even if the user has logged out of RJS + and back in again, possibly from another site. + + The sequence of events involved in using RJS are as follows. First, + the user logs in, specifying a user name, password, and account + number. In addition to indicating how subsequent use of RJS is to be + billed, this accounting information identifies the owner of a + particular RJE terminal. That is, the association between user name + and HASP virtual RJE terminal is unique, and only one individual is + allowed logged in under a given user name at a time. + + At present, billing within RJS is not implemented, and therefore the + login account number is completely arbitrary, and user name and + password are relatively so. The first time a given user name is + used, any password may be chosen; thereafter, as long as the user + name is known to RJS, the same password must be used. A user name + remains known to RJS while he is logged in, and when he is not, as + long as he owns at least one job known to PJS. Otherwise, the user + name is discarded. + + After a user is logged in, he specifies input and output file + information and requests input retrieval be initiated. He may then + log out or not as he wishes; specifically he is not required to + remain logged in during source file retrieval. A job can completed + abnormally at any stage of processing, or normally, after storage of + the last of its output. In any case, the circumstances of the final + disposition of the job are displayed to the user immediately if he is + logged in, saved for a period after its completion, and are available + to him on request the next time he logs in. This status information + is retained for at least a fixed period (currently two days), but + will be retained longer as long as sufficient storage space is + available for it. + + + + + + + +Krilanovich [Page 2] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + +RJS Commands - General Information + + In order to simplify specification of job parameters, RJS maintains a + set of accumulators for these parameters. Each accumulator is + initially empty, and may have its contents set or referred to by + various commands. The following parameter accumulators are + maintained for each user (user name, password, and account together + are termed accounting parameters): login accounting parameter (those + specified either in the LOGIN or the USER, PASS, and ACCT commands), + source pathname, print pathname, punch pathname, source accounting + parameter, print accounting parameter, and punch accounting + parameter. In addition, associated with each job are the parameters + source, print, and punch pathname, and source, print, and punch + accounting parameters. + + When the TELNET connections are first opened, RJS sends the user a + herald message of the form '300 UCSB RJS (VER. <date>) TTY + <integer>.', where <date> identifies the current version of RJS, and + <integer> identifies the user's terminal in the sense that each + TELNET connection is assigned a unique TTY number. + + During the process of running a job, any of several spontaneous job + status messages may be displayed to the user. They are '240 INPUT + RETRIEVAL FOR JOB <jobid> HAS BEGUN.', displayed when the input + connection(s) have been established, '261 JOB <jobid> HAS COMPLETED + EXECUTION.', when the first of the job's printed output has been + received from HASP, '466 PRINTED [or PUNCHED] OUTPUT FROM UNKNOWN JOB + (HASP JOB NUMBER <integer>) IS BEING DISCARDED.', if printed or + punched output is received from HASP over the user's line for a job + not known to RJS, and messages explaining errors such as ICP/RFC + failure, invalid job card, null source deck, missing pathname, and + data transfer network errors (see Appendix B for for a list of + possible reply id's). In addition, while in local syntax, the user + may receive messages from HASP over his virtual operator's console. + Some are responses to HASP commands issued by the user, and others + are spontaneous messages. All, however, are asynchronous to the + entering of other RJS commands. + + Certain general rules hold for both sets of syntax. They are as + follows: + + 1. The character pair CR-LF is used as command accept to terminate + commands. Other occurrences of these two characters are + ignored, and may be used as desired for local carriage control. + + 2. Any number of blanks are permitted before or after any + syntactic unit (including the first and last). + + + + +Krilanovich [Page 3] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + + 3. Upper and lower case alphabetics are treated identically + everywhere except in <filename>. + + 4. Whenever a switch is made to the syntax not in effect, the + current TELNET modes (full or halfduplex, character or line at + a time) are saved, and reinstated when the current syntax is + again entered. + + In the syntactic descriptions below, the following notation is used: + + 'text' denotes literal text (quotes not part of text) + + <unit> denotes name of syntactic unit + + <a>_<b> denotes choice of syntactic units <a> or <b> + + [<a>] denotes optional syntactic unit + + (<a><b><c>) denotes group of syntactic units treated as a + whole + + = syntactic unit at left defined by statement on + right + + The following general syntactic definitions are hereby made: + + <CA> = command accept + + <user name > = a string of 1 to 8 alphameric characters + + <password> = a string of 1 to 8 alphameric characters + + <account> = a string of 1 to 6 alphameric characters + + <jobid> = a string of 1 to 8 alphameric characters, + the first of which is alphabetic. + + + + + + + + + + + + + + + +Krilanovich [Page 4] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + +Description of RJS Commands, Standard Syntax + + The following is a list of the commands supported in the standard + syntax. Where not specified, the command's response is '200 OK'. In + those cases where it is stated that the user must be logged in, the + response '504 LOGIN PLEASE.' is displayed if the user is not logged + in. + + 'USER' ['='] <user name> <CA> + + Specifies the user's user name for accounting purposes, initiates + login, and initializes the source, print, and punch user name + accumulators to <user name>. To complete login, this command must be + followed by a successful PASS command. The only other command + allowed before the user is logged in is BYE. The response to a + syntactically valid USER command is always '330 ENTER PASSWORD' + + 'PASS' ['='] (password> <CA> + + Specifies the user's password to gain access to the user's account, + completes the login initiated by a previous USER command, and + initializes the source, print, and punch password accumulators to + <password>. The response to a successful PASS command is '230 USER + <user name> OWNS REMOTE TERMINAL <integer>.', where <integer> is the + number of the HASP virtual RJE terminal owned by the user. The + following error replies are possible: '431 NEW USERS ARE NOT BEING + ACCEPTED AT THIS TIME.' if there is no free HASP terminal to assign + to the user (there is currently a maximum of 10), or if there are + insufficient other resources available to support another user; '431 + INCORRECT PASSWORD.' if the specified <password> is not that assigned + to the previously specified <user name>; '431 ANOTHER USER IS LOGGED + IN AS <user name>.' - only one user is allowed logged in with a given + <user name> at a time. + + 'ACCT' ['='] <account> <CA> + + Specifies the UCSB Computer Center account number to which the user's + use of RJS is to be billed, and initializes the source, print, and + punch account accumulators to <account>. The response to a + syntactically correct ACCT command is '200 OK'. + + As previously stated, RJS billing is yet to be implemented, and + therefore the ACCT command is optional. Users and writers of user + processes are warned, however, that it will eventually be required, + and that at that point, the PASS command will return a reply id of + 330, and the ACCT command will have those replies listed above under + PASS. + + + + +Krilanovich [Page 5] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + + 'BYE' <CA> + + Logs the user out and closes the TELNET connections to him, + regardless of whether there are any file transfers in progress; if + there are, they continue unaltered. The response to a BYE Command is + always '231 LOGOUT C0MPLETED; TRANSFERS (IF ANY) CONTINUE.', followed + by a continuation line of 'TTY <integer> IS DISCONNECTED.' + + 'STATUS' <CA> + + Lists the user names of those users currently known to RJS. The + response is either '100 NO USERS ARE KNOWN TO RJS' or '10O THE + FOLLOWING USERS ARE KNOWN TO RJS:', followed by one or more lines, + each beginning with a continuation reply id of four blanks, giving a + remote terminal number, the user name of the user who owns that + terminal, and the name of the site from which he last logged in. + + 'SYNTAX' <CA> + + Causes the current command syntax to become local syntax. The TELNET + modes (full or half duplex, character or line at a time) most + recently in effect in local syntax again become effective. RJS + responds with the local syntax prompt character (currently number + sign, '#'). + + The remaining commands require the user to be logged in. + + 'REINIT' <CA> + + Resets to empty the source, print, and punch accounting parameter, + the source, print, and punch pathname, and the login accounting + parameter accumulators. The response to a REINIT command is always + '204 OK'. + + ('INUSER' _ 'INID') ['='] <user name> <CA> + + Sets the source user name accumulator to (user name>. + + 'INPASS' ['='] <password> <CA> + + Sets the source password accumulator to <password>. + + 'INACCT' ['='] <account> <CA> + + Sets the source account accumulator to <account>. + + + + + + +Krilanovich [Page 6] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + + 'OUTUSER' ['='] <user name> <CA> + + Sets the print and punch user name accumulators to <user name>. + + 'OUTPASS' ['='] <password> <CA> + + Sets the print and punch password accumulators to <password>. + + 'OUTACCT' <account> <CA> + + Sets the print and punch account accumulators to <account>. + + 'INPATH' ['='] <pathname> <CA> + <pathname> = <file> _ <socket> + <socket> = [<host addr> ','] <socket number> <attributes> + <file> = <host addr> <attributes> '/' <filename> + <host addr> = <integer> + <socket number> = <integer> + <integer> = <decimal integer> _ ('D' <decimal integer>) _ + ('H' <hexadecimal integer>) _ ('X' <hexadecimal integer>) _ + ('O' <octal integer>) + <attributes> = ':T' _ ':A' _ ':N' _ ':' _ <null> _ ':E' _ + ':TE' _ ':AE' _ ':NE' + <filename> = 1 to 16 ASCII characters, excluding CR and LF + (codes 0 through 127, excluding 10 and 13) + + Sets the source pathname accumulator to <pathname>. The <pathname> + is the means for specifying a file's source or destination; its + semantics are as follows: + + + 1. Specification of <socket> indicates that RJS will establish a + simplex connection to the stated socket (RJS issuing the + CONNECT, user issuing a LISTEN). The data is then transferred + over this connection, with CLOSE signaling end of file. + + 2. If <host addr> in <socket> is defaulted, the host containing + the TELNET user will be assumed. + + 3. Specification of <file> indicates that RJS will contact the + standard FTP server socket (currently socket 3) at the stated + host, and transfer the data according to the File Transfer + Protocol. The <file name> referred to here corresponds to the + term <pathname> used in the FTP specification document, RFC + #354. + + + + + + +Krilanovich [Page 7] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + + 4. The type of carriage control and the data code used are + determined by <attributes>. The meaning of this parameter is + as follows: + + ':T' ASCII code, TELNET carriage control + ':A' ASCII code, ASA carriage control + ':N' ASCII code, no carriage control + ':' identical to ':N' for input, ':A' for output + <null> identical to ':N' for input, ':A' for output + ':E' identical to ':NE' for input, ':AE' for output + ':TE' EBCDIC code, TELNET carriage control + ':AE' EBCDIC code, ASA carriage control + ':NE' EBCDIC code, no carriage control + + Detailed descriptions of the transfer modes may be found + below under 'RJS File Transfer.' + + ('OUTPATH' _ 'OUT') <output file> '=' <disp> <CA> + <output file> = 'A' _ 'B' _ <null> + <disp> = <pathname> _ '(H)' _ ('(S)' (pathname>) _ '(D)' + + Stores <disp> in the print pathname accumulator if <output file> is + either 'A' or <null>, or in the punch pathname accumulator if <output + file> is 'B'. The meanings of the options for <disp> are as follows: + + <pathname> transmit-and-discard - the file is sent and + then deleted + + '(H)' hold only - the file is not sent but rather + held for user intervention + + '(S)' <pathname> save - the file is sent and then held for user + intervention + + '(D)' discard - the file is deleted as soon as it is + produced + + 'INPUT' <CA> + + Creates a job, stores with it the contents of the source, print, and + punch accounting parameter and pathname accumulators, and places it + in a queue within RJS of jobs owned by the user awaiting source file + transfer. When it becomes the first or only job in this queue, the + retrieval of its source file is initiated. A job identifier + ('jobid') is assigned to the job and displayed to the user. The + contents of the source and print pathname accumulators must have been + set by INPATH and OUTPATH commands previous to the INPUT command. If + successful, the message '260 ASSIGNED JOBID IS <jobid>.' is + + + +Krilanovich [Page 8] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + + displayed, where <jobid> is that which may used in subsequent RJS + commands to identify this particular job. If the user is found to + own the maximum number of jobs (currently 5), an attempt is made to + satisfy the request by finding the oldest of the user's jobs that has + completed processing. If this can be done, the old job is deleted, + and the response to the command is '260 JOB <old jobid> IS BEING + DISCARDED TO MAKE ROOM FOR THE NEW JOB.', followed by a continuation + line of 'ASSIGNED JOB ID IS <new jobid>.' The following error + responses are possible: '360 SOURCE PATHNAME HAS NOT BEEN + SPECIFIED.', '505 PRINT PATHNAME HAS NOT BEEN SPECIFIED.', '504 NEW + JOBS ARE NOT BEING ACCEPTED AT THIS TIME.', and '504 USER (user name> + ALREADY OWNS THE MAXIMUM NUMBER OF JOBS.' + + 'CHANGE' <jobid> <output file> '=' <disp> <CA> + + Stores <disp> as the print pathname of job <jobid> if <output file> + is either 'A', or <null>, or as the punch pathname if <output file> + is 'B', if the appropriated file transfer has not yet begun. The + following error replies are possible: '464 JOB <jobid> NOT FOUND.', + '5O4 JOB <jobid> IS ALREADY BEING, OR HAS BEEN, PRINTED.', if <output + file> is 'A', '504 JOB <jobid> IS ALREADY BEING OR HAS BEEN, + PUNCHED.', if <output file> is 'B', and '464 USER <user name> DOES + NOT OWN JOB <jobid>.' + + 'STATUS' <jobid> <CA> + + Causes the status of the job known to RJS as <jobid> to be displayed. + Included in this display are in which stage of RJS processing the job + is ('BEING READ', 'IN EXECUTION', 'BEING PRINTED', 'BEING PUNCHED', + or 'HAS COMPLETED'), the pathname information (accounting parameters, + host name, socket number, attributes, disposition, and filename) for + those files (source, print and punch) that have been supplied for the + job, and if the job has failed at some stage of RJS processing, an + explanation of the failure. The possible responses are '464 JOB + <jobid> NOT FOUND.', and a line with reply code 161 followed by zero + or more continuation lines explaining the status of the job. + + 'CANCEL' <jobid> <CA> + + Causes processing of the job known to RJS as <jobid> to terminate + immediately, and all record of it to be deleted. If FTP data and/or + command connections are pending or established, they are closed; if + the job is in execution, an OS CANCEL command is issued to terminate + execution. Any output from the job is lost, and a subsequent request + for status of job <jobid> will return the diagnostic that the job is + not found. The successful responses are '262 JOB <jobid> DELETED.' + + + + + +Krilanovich [Page 9] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + + and '262 JOB <jobid> WILL BE DELETED AS SOON AS POSSIBLE.'; the + possible failure responses are '464 JOB NOT FOUND.' and '464 USER + <user name> DOES NOT OWN JOB <jobid>.' + + The following standard RJS commands are as yet not implemented, and + elicit the response '506 COMMAND NOT IMPLEMENTED.': ABORT, ALTER, + BACK, HOLD, OP, RECOVER, RESTART, and SKIP. + +RJS Commands - Local Syntax Conventions + + In addition to those general conventions discussed above, the + following rules hold for local syntax: + + 1. Except in certain circumstances, noted below, a period may be + used for command accept. + + 2. The following control characters have the indicated functions: + + SOH (control A) delete last character + DEL delete last character + SYN (control V) delete last word + CAN (control X) delete entire line + EOT (control D) display current word + ACK (control F) display entire line + '?' display acceptable input forms + ESC force recognition of current word + blank force recognition of current word + + + 3. The TELNET control characters 'you-echo' and 'I-echo' have the + desired results. 'You-echo' also has the effect of changing to + character at a time mode, if the user is not already in + character at a time mode. + +Description of RJS Commands, Local Syntax + + The following is a list of those commands supported in local syntax. + In those cases where no success reply is indicated, RJS responds with + CR-LF followed by the prompt character. In those cases where it is + stated that the user must be, or must not be, logged in, 'LOGIN + PLEASE.' or 'LOGGED IN.', respectively, are displayed if the user is + not in the appropriate state. When a reference is made to a response + listed under a standard syntax command, it should be noted that reply + id's are not displayed under local syntax. + + 'FULLDUPLEX' <CA> + + Sets the user to fullduplex and character at a time modes. + + + +Krilanovich [Page 10] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + + 'HALFDUPLEX' <CA> + + Sets the user to halfduplex mode. + + 'LINE<-AT<-A<-TIME' <CA> + + Set's the user to halfduplex, line at a time modes. The control + characters previously described remain effective, but RJS will send + no output over the TELNET connection except when the current command + line is empty. + + 'LOGIN' <user name> <password> <account> <CA> + + Specifies the UCSB Computer Center user name and account to which the + user's use Of RJS is to be billed, logs the user in, and sets the + source, print, and punch accounting parameter accumulators to <user + name>, <password> and <account>. This command is valid only if the + user is not logged in, and has the same replies as the standard + syntax 'PASS' command. + + 'DISCONNECT' <CA> + + Closes the TELNET connection. If the user is logged in, he is first + logged out. The effective action taken in response to an unexpected + close on the TELNET connection is that of a DISCONNECT. The response + to a DISCONNECT command is 'TTY <integer> IS DISCONNECTED.' + + The remaining commands require the user to be logged in. + + 'LOG0UT' <CA> + + Logs the user out and terminates billing of subsequent activity over + the TELNET connection to the previously effective accounting + parameters, and performs the effective action of the REINITIALIZE + command. LOGOUT does not close the TELNET connection, nor does it + affect any file transfers in progress for jobs owned by the user. + + 'REINITIALIZE' <CA> + + Resets to empty the following accumulators: source, print and punch + accounting parameter, source, print and punch pathname, and login + accounting parameter. + + 'ACCOUNTING' <account parms> <CA> + <account parms> = '(' <u> ',' <p> ',' <a> ')' + <u> = <user name> _ <null> + <p> = <password> _ <null> + <a> = <account> _ <null> + + + +Krilanovich [Page 11] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + + Sets the source, print and punch accounting parameters to <account + parms>. Specification of <null> for any of <u>, <p>, or <a> + indicates use of the contents of the corresponding login accumulator. + + 'SOURCE' <account parms> <CA> + + Set the source accounting parameter accumulators to <account parms>. + + 'PRINT' <account parms> <CA> + + Sets the print accounting parameter accumulators to <account parms>. + + 'PUNCH' <account parms> <CA> + + Sets the punch accounting parameter accumulators to <account parms>. + + 'SOURCE' <jobid> (<account parms> _ <null>) <pathname> <CA> + + Sets the source pathname of job <jobid> to <pathname>, and the source + accounting parameters to <account parms>, if specified, or otherwise + to the contents of the source accounting parameter accumulators. If + job <jobid> already exists and its source pathname has not been + specified, the new pathname is stored; if it has been specified, it + is changed unless source file retrieval has already begun. If the + job does not already exist, a new job is created and the pathname + stored. Restrictions are that if a job with a given <jobid> has + completed processing, it must be DELETE'd before that <jobid> may be + used for a new job; a user may only alter jobs owned by him; and he + may not own more than a certain fixed number of jobs (currently 5). + If the user already owns the maximum number, an attempt is made to + delete an old job to make room for the new one, as described for + INPUT under standard syntax. The SOURCE command has the following + possible error responses: 'NEW JOBS ARE NOT BEING ACCEPTED AT THIS + TIME.', 'USER <user name> ALREADY OWNS THE MAXIMUM NUMBER OF JOBS.', + 'USER <user name> DOES NOT OWN JOB <jobid>.', 'JOB <jobid> HAS + ALREADY COMPLETED.', and 'JOB <jobid> IS ALREADY BEING, OR HAS BEEN, + READ.' + + 'PRINT <jobid> (<account parms> _ <null>) <disp> <CA> + + Sets the print pathname of job <jobid> to <disp>, and the print + accounting parameters to <account parms> if specified, or otherwise + to the contents of the print accounting parameter accumulators. The + PRINT command either creates a new job or modifies an existing one, + as explained under SOURCE, and has the same restrictions and error + messages listed for the SOURCE command, after making the obvious + substitution of 'PRINTED' for 'READ'. The PRINT command is valid + only before print file transfer begins. + + + +Krilanovich [Page 12] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + + 'PUNCH' <jobid> (<account parms> _ <null>) <disp> <CA> + + Sets the punch pathname of job <jobid> to <disp>, and the punch + accounting parameters to <account parms> if specified, or otherwise + to the contents of the punch accounting parameter accumulators. The + PUNCH command either creates a new job or modifies an existing one, + like the SOURCE and PRINT commands, and has the same restrictions and + error messages listed for the SOURCE command, after making the + substitution of 'PUNCHED' for 'READ'. The PUNCH command is valid + only before punch file transfer begins. + + 'DELETE' <jobid> <CA> + + Identical in function to the CANCEL command in standard syntax. + + 'INPUT' <jobid> <CA> + + Places the job identified by <jobid> in a queue within RJS of jobs + owned by the users awaiting source file transfer. When it becomes + the first or only job in this queue, the retrieval of the source file + is initiated. If the INPUT command is successful, the message 'JOB + <jobid> ACCEPTED FOR PROCESSING.' is displayed. The following error + messages are possible: 'JOB <jobid> NOT FOUND.', 'USER <user name> + DOES NOT OWN JOB <jobid>.', 'JOB <jobid> HAS ALREADY COMPLETED.', ' + SOURCE PATHNAME HAS NOT BEEN SPECIFIED.' and 'PRINT PATHNAME HAS NOT + BEEN SPECIFIED.' + + 'JOBSTAT' <jobid> <CA> + + Identical in function and response to the 'STATUS' <jobid> command in + standard syntax. + + 'JOBLIST' <CA> + + Lists the jobid's of those jobs owned by the user. + + $ <text> <CA> + <text> = a string of any characters including '?' and '.'. + Note that <CA> must be CR-LF, rather than period. + + Issues <text> as a HASP operator command over the user's virtual + operator's console. See Appendix A for a description of HASP + commands and command responses. + + + + + + + + +Krilanovich [Page 13] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + + RJS File Transfer + + The <pathname> defined earlier is the means whereby the user + specifies the location and attributes of his source, print and punch + files. The means of determining a file's location have been + previously discussed; this section explains the controls the user has + over data attributes. + + The parameter <attributes> specifies the type of carriage control and + the mode of transfer. For the case of transfer over a simplex + connection, this parameter has the following meanings: + + ':T' or ':TE' - TELNET-like carriage control. The data is a + stream of characters with embedded carriage control bytes. Page + eject is signaled by form feed, ASCII or EBCDIC decimal 12, new + line by carriage return - line feed, ASCII l3-lO, EBCDIC 13-27. + Multiple new line ('double spacing' or 'triple spacing') is + indicated by multiple occurances of CR-LF. + + ':A' or ':AE' - ASA carriage control. The data is a series of + fixed-length records, 81 characters on input, 133 on output, with + the first character of each record an ASA carriage control + character. The possible carriage control characters are as + follows; '+' - no line advance before print (overprint), ' ' - + one line advance (single space), '0' - two lines advance (double + space), '-' - three lines advance (triple space), and '1' - page + eject. Whatever carriage control character appears on input is + ignored. + + ':N' or ':NE' - no carriage control. The data is a series of + fixed length records, 80 characters on input, 132 on output. Any + carriage control generated on output is discarded before + transmission. + + When file transfer takes place by means of FTP, the interpretation of + the <attributes> parameter is somewhat different. In this case the + meanings are as follows: + + ':T' or ':TE' - TELNET-like carriage control. The data has the + same format as for the simplex connection, and is transferred in + stream mode, file structure, and either ASCII ('A') or EBCDIC + ('E') type. + + ':A' or ':AE' - ASA carriage control. Data is transferred in + blocked mode, record structure, and either ASCII print ('P') or + EBCDIC print ('F') type. The first character of every record is + the ASA carriage control character described above. + + + + +Krilanovich [Page 14] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + + ':N' or ':NE' - no carriage control. Data is transferred in + blocked mode, record structure, and either ASCII ('A') or EBCDIC + ('E') type. As for the simplex connection, no carriage control + information is present. + + In order to effect the FTP file transfer, RJS issues the following + FTP commands (in the given order): USER (if access user name has + been specified), PASS (if password specified), ACCT (if account + specified), BYTE (specifying bytesize of 8), ALLO (if outputting + file), TYPE, STRU, MODE, SOCK, and APPE or RETR. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Krilanovich [Page 15] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + +Appendix A: The HASP Spooling System + + HASP is a spooling-queuing-scheduling system used in conjunction with + IBM OS/360 to aid in processing of batch jobs. The main purpose of + HASP is to increase throughput by minimizing I/O wait time and + providing a priority scheduling scheme whereby shorter jobs are + chosen for processing over longer jobs. + + There are several stages of processing, or functions, within HASP. + At any instant, a given job is either in some stage of processing, in + which case the job is said to be active, or it is waiting to be + processed by some function, in which case it is said to be queued for + that function. Jobs to be processed by a function are selected from + the queue of jobs waiting for that function, in order of decreasing + priority. A job's priority is determined by its estimated CPU tine + and volume of output. The result is that smaller jobs are selected + for processing over larger jobs, and therefore spend less time in the + system. + + The HASP remote user is provided with a virtual operator's console. + Over this console he may enter HASP operator commands to display + information about the system in general, and to exercise control over + his terminal and his jobs. HASP sends messages to his console in + response to his commands, and to inform him of conditions concerning + him as they arise. HASP commands have the following general form: + + $ <verb> <operand1>,<operand2>,...,<operandn> + where + <verb> = a single character verb which + identifies the general function + to be performed + + <operand> = identification of the object to + be displayed or acted upon. + + Zero or more operands may be present, depending on the command, and + commas are used to separate operands when more than one is used. In + general, alphabetics may be entered in either upper or lower case, + and for text outside paired apostrophes, blanks may be inserted at + any point desired. Apostrophes intended as text characters must + appear in duplicate. + + Every HASP command ellicts one or more responses. The response "OK" + is used in many cases to acknowledge the command and to signify that + the requested action has been taken or initiated. In the later case, + an information message will be issued when the request is completed. + + + + + +Krilanovich [Page 16] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + + Every HASP console message begins with the text 'S HH.MM.SS' or + 'S*HH.MM.SS', where HH.MM.SS is the time of day in hours, minutes, + and seconds, and in 24 hour clock. + + Many commands display job status information as a response. The + format of this standard response is as follows: + + jobs queued for processing: + JOB jjj jobname AW EXEC class PRIO prio HOLD + PRINT rem PURGE + PUNCH rem *DUP* + PURGE + + jobs being processed: + JOB jjj jobname EXECUTING class PRIO prio HOLD + ON DEVICE dev PURGE + IS PURGING + + where + jjj = HASP assigned job number + jobname = OS jobname + AW = 'AWAITING' + class = job's job class + prio = job's HASP internal priority + rem = terminal number of remote terminal + where job is queued to print or punch + dev = device name + HOLD = signifies job is in hold status, or + will be at completion of current + function + PURGE = signifies job will be purged at + completion of current function + *DUP* = signifies job cannot begin execution + until another job with same jobname + completes + + The following is a brief description of those HASP operator + commands that may be issued by a remote user (for a more + complete description, see NIC #16306): + + SDA Display status information on all active jobs + + SDF [,rem] Display number of jobs queued for special forms + + SDN [,queue] Display status information on all queued jobs + + SDQ Display number of queued jobs + + + + +Krilanovich [Page 17] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + + SCJ jjj Delete job immediately + + SKJ jjj Issue OS CANCEL and delete job + immediately + + SPJ jjj Delete job after current function + + SDJ jjj Display job status information + + SD'jobname Display job status information + + SB device,pages Backspace device + + SC device Delete current function on device + + SF device,pages Forward space device + + SDP device Display job number of job on device + + SDI Display status and classes of initiators + SDLINE rem Display status of remote terminal + + SDRM rem Display status of remote terminal + + SDU Display status of local unit record + devices + + SDM rem,'message' Display message to remote console + + + + + + + + + + + + + + + + + + + + + + + +Krilanovich [Page 18] + +RFC 477 Remote Job Service at UCSB 23 May 1973 + + +Appendix B: RJS Reply ID's + + The following is a list of the reply id's of the replies + generated by RJS in response to the indicated commands: + + command success reply failure replies + + USER 330 501 + + PASS 230 501,431,505 + + ACCT 200 501 + + BYE 231 501 + + REINIT 2O4 5O1,5O4 + + INUSER/INID 200 501,504 + + INPASS 200 501,504 + + INACCT 200 501,504 + + OUTUSER 200 501,504 + + OUTPASS 200 501,504 + + OUTACCT 200 501,504 + + INPATH 200 501,504 + + OUTPATH/OUT 200 501,504 + + INPUT 260 501,360,504,505 + + CHANGE 200 501,464,504 + + STATUS (no operand) 100 501 + + STATUS (with operand) 161 501,464,504 + + CANCEL 262 501,464,504 + + Possible spontaneous reply id's are: 300, 440, 441, 442, 461, and + 466. + [This RFC was put into machine readable form for entry] + [into the online RFC archives by Mikan Mirko] + + + + +Krilanovich [Page 19] + |