📄 rfc120.txt
字号:
(2) CLOSE This operation is a request that the specified local socket be returned to the closed state. If the last operation involving this socket was a LISTEN, this operation refuses the foreign process' connection attempt. If the last operation was a CONNECT, the attempt is aborted. If a connection is established, any data in transit from the local socket is allowed to reach the foreign socket and to be either received or flushed before the local socket is closed. The subprogram will wait until the socket has been returned to the closed state. The calling sequence is as follows: CALL @CLOSE(cmpcd,time); where 'cmpcd' is the completion code variable associated with the local socket. 'time' is the length of time the subprogram is to wait for the completion of the operation. The following completion codes are possible for this operation: 0, The operation was successful, and the socket has been returned to the closed state 8, The specified completion code variable is not currently assigned to a socket; the operation was suppressed 12, The specified local socket is in the process of being closed; the operation was suppressed, but the local socket will be closed 36, Either hardware at the foreign site is inoperative, or the NCP's counterpart at the foreign site does not exist or [Page 6]RFC 120 NETWORK PL1 SUBPROGRAMS has failed 44, By operator command, all Network operations were terminated; the socket will be closed 60, An NCP control transmission error occured; the operation was aborted 64, A transmission error occured; the operation was aborted, but the socket will be closed 252, The specified time limit was exceeded; the operation was initiated but not completed(3) SEND This operation causes data to be sent to the foreign socket. The subprogram will wait until the data has been received by the foreign socket, or until it has been queued locally by the NCP. The calling sequence is as follows: CALL @WRITE(cmpcd, bfr,len,time[,offset]); where 'cmpcd' is the completion code variable associated with the local socket. 'bfr' is the data to be sent, and must be a singly dimensioned array, either DECIMAL or BINARY, FIXED or FLOAT. 'len' is the number of bits of data to be sent. If 'len' is non-positive, no operation is performed. 'len' has the attribute BINARY FIXED(31,0). 'time' is the length of time the subprogram is to wait for the completion of the operation. 'offset' is the bit offset from the first bit of 'bfr' at which data transmission is to begin, and must have the attributes BINARY FIXED(31,0). If not specified, 'offset' defaults to zero. The following completion codes are possible for this operation: 0, The operation was successful, and the data has been sent 4, The specified local socket is not a SEND socket; the operation was suppressed 8, The specified completion code variable is not assigned to a socket; the operation was suppressed 12, A previous SEND operation is in progress; the operation was suppressed 16, The connection is not fully open; the operation was suppressed 20, The foreign socket terminated the connection before [Page 7]RFC 120 NETWORK PL1 SUBPROGRAMS completion of the SEND operation; not all data was transmitted 36, Either hardware at the foreign site is inoperative, or the NCP's counterpart at the foreign site does not exist or has failed 44, By operator command, all Network operations were terminated; the socket will be closed 52, One or more interrupts were received from the foreign socket; the operation was suppressed 56, An addressing exception was encountered with respect to the data buffer; the operation was suppressed 60, An NCP control transmission error occured; the operation was suppressed 64, A transmission error occured; the operation was aborted, and the socket will be closed 252, The specified time limit was exceeded; the operation was initiated but not completed(4) RECEIVE This operation causes data to be received from the foreign socket. The subprogram will wait until the reception of data is complete. The calling sequence is as follows: CALL @READ(cmpcd,bfr,len,time[,offset]); where 'cmpcd' is the completion code variable associated with the local socket. 'bfr' is the variable into which the data is to be placed, and must be a singly dimensioned array, DECIMAL or BINARY, FIXED or FLOAT. 'len' is the number of bits of data to be received. If 'len' is non-positive, no operation is performed. 'len' has the attribute BINARY FIXED(31,0). 'time' is the length of time the subprogram is to wait for the completion of the operation. 'offset' is the bit offset from the first bit of 'bfr' at which the first bit of data is to be placed, and must have the attributes BINARY FIXED(31,0). If not specified, 'offset' defaults to zero. The following completion codes are possible for this operation: 0, The operation was successful and the data has been received [Page 8]RFC 120 NETWORK PL1 SUBPROGRAMS 4, The specified local socket is not a receive socket; the operation was suppressed 8, The specified completion code variable is not assigned to a socket; the operation was suppressed 12, A previous RECEIVE operation is in progress; the operation was suppressed 16, The connection is not fully open; the operation was suppressed 20, The foreign socket terminated the connection before completion of the RECEIVE operation; data is unpredictable 36, Either hardware at the foreign site is inoperative, or the NCP's counterpart at the foreign site does not exist or has failed 44, By operator command, all Network operations were terminated; the socket will be closed 24, An addressing or protection exception was encountered with respect to the data buffer; the operation was suppressed 52, One or more interrupts were received from the foreign socket; the operation was suppressed 60, An NCP control transmission error occured; the operation was aborted, and the socket will be closed 252, The specified time limit was exceeded; the operation was initiated but not completed(5) CHECK This operation causes the status of the specified local socket to be returned. There is no completion code variable associated with this operation, since it is always successful and the socket is identified by its socket number. This operation is valid at any time and is always completed immediately. The calling sequence is as follows: CALL @CHECK(lclsck,stat,mnem,fgnsck,deficit); where 'lclsck' is the socket identifier of the local socket. 'stat' is a code for the status, and has the attribute BINARY FIXED(31,0). 'mnem' is a mnemonic for the status, and has the attribute CHARACTER, of any fixed length greater than or equal to eight. If 'mnem' is longer than eight bytes, it will be padded to the right with blanks. 'fgnsck' is the socket identifier of the foreign socket, or zero. [Page 9]RFC 120 NETWORK PL1 SUBPROGRAMS 'deficit' is the send/receive deficit in bits, or zero, and has the attributes BINARY FIXED(31,0). 'lclsck' is the only argument the programmer need define; the others are output from the subprogram. Following are the possible status codes, together with their mnemonics and interpretations. 'STAT' 'MNEM' MEANING ---- ---- 0 OPEN A connection is fully established. No SEND/RECEIVE operation is in progress. 'fgnsck' is the socket identifier of the connected socket. 'deficit' is the number of bits queued locally at the socket by the NCP and available to satisfy a future RECEIVE operation, or awaiting output as the result of a previous SEND operation. 1 LISTEN A LISTEN has been issued. 2 CONNECT A CONNECT has been issued. 'fgnsck' is the socket identifier of the foreign socket. 3 DECISION A LISTEN has been completed. 'fgnsck' is the socket identifier of the calling socket. 4 CALL(S) One or more calls have been received for the local socket. No LISTEN or CONNECT has been issued. 5 I/O A connection is fully established. A SEND/RECEIVE operation is in progress. 'fgnsck' is the socket identifier of the connected socket. 'deficit' is the number of bits yet to be sent or received. 6 CLOSED The socket is in the closed state. 7 <--DRAIN The foreign socket is attempting to close the connection. The NCP has data yet to be read by the local socket. 'fgnsck' is the socket identifier of the connected socket. 'deficit' is the number of bits yet to be received. [Page 10]RFC 120 NETWORK PL1 SUBPROGRAMS 8 DRAINED The foreign socket is attempting to close the connection. The NCP is awaiting arrival at the foreign site of data currently in transit. 'fgnsck' is the socket identifier of the connected socket. 9 CLOSING The local socket has issued a CLOSE. The NCP is in the process of returning the local socket to the closed state. 'fgnsck' is the socket identifier of the connected socket. 10 DRAIN--> The local socket has issued a CLOSE. The NCP is completing the last SEND operation before returning the local socket to the closed state. 'fgnsck' is the socket identifier of the connected socket. 'deficit' is the number of bits the NCP has yet to transmit.(6) IDENTIFY This operation is used to identify a local socket by its completion code variable. The operation is valid at any time, and is always completed immediately. Since it is always successful, there are no completion codes for the operation, and the contents of the completion code variable are not changed. The calling sequence is as follows: CALL @ID(cmpcd,lclsck); where
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -