|
|
1.1 root 1: -- $Header: BulkData1.cr,v 2.2 87/01/05 11:09:03 ed Exp $
2:
3: -- $Log: BulkData1.cr,v $
4: -- Revision 2.2 87/01/05 11:09:03 ed
5: -- Added StreamOfUnspecified for use in higher protocols
6: --
7: -- Revision 2.1 85/11/21 07:32:48 jqj
8: -- fixed comment leaders
9: --
10: -- Revision 2.0 85/11/21 07:24:29 jqj
11: -- 4.3BSD standard release
12: --
13: -- Revision 1.2 85/11/20 13:08:46 jqj
14: -- 4.3 beta version
15:
16:
17: BulkData: PROGRAM 0 VERSION 1 =
18:
19: BEGIN
20:
21: -- streams (for external use) --
22:
23: StreamOfUnspecified: TYPE = CHOICE OF {
24: nextSegment(0) => RECORD [
25: segment: SEQUENCE OF UNSPECIFIED,
26: restOfStream: StreamOfUnspecified],
27: lastSegment(1) => SEQUENCE OF UNSPECIFIED};
28:
29: -- types --
30:
31: Identifier: TYPE = RECORD [
32: host: ARRAY 3 OF UNSPECIFIED,
33: hostRelativeIdentifier: ARRAY 2 OF UNSPECIFIED ];
34:
35: Descriptor: TYPE = CHOICE OF {
36: null(0), immediate(1) => RECORD [ ],
37: passive(2), active(3) => RECORD [
38: network: ARRAY 2 OF UNSPECIFIED,
39: host: ARRAY 3 OF UNSPECIFIED,
40: identifier: Identifier ]
41: };
42:
43: -- sinks (for external use) --
44:
45: Sink: TYPE = Descriptor;
46: immediateSink: Sink = immediate[];
47: nullSink: Sink = null[];
48:
49: -- sources (for external use) --
50:
51: Source: TYPE = Descriptor;
52: immediateSource: Source = immediate[];
53: nullSource: Source = null[];
54:
55: -- errors --
56:
57: InvalidDescriptor: ERROR = 0; -- source or sink is passive, active, or null
58: NoSuchIdentifier: ERROR = 1; -- identifier is unrecognized
59: IdentifierBusy: ERROR = 2; -- BD object is being sent, received, or cancelled
60: WrongHost: ERROR = 3; -- caller's host is unauthorized to transfer the data
61: WrongDirection: ERROR = 4; -- BDT in the other direction was expected
62: TransferAborted: ERROR = 5; -- BDT was aborted by sender or receiver
63:
64:
65: -- procedures
66:
67: Send: PROCEDURE [identifier: Identifier, sink: Sink, timeout: CARDINAL]
68: REPORTS [ InvalidDescriptor, NoSuchIdentifier, IdentifierBusy, WrongHost,
69: WrongDirection, TransferAborted ] = 0;
70: -- transfers bulk data from callee to caller
71:
72: Receive: PROCEDURE [identifier: Identifier, source: Source, timeout: CARDINAL]
73: REPORTS [ InvalidDescriptor, NoSuchIdentifier, IdentifierBusy, WrongHost,
74: WrongDirection, TransferAborted ] = 1;
75: -- transfers bulk data from caller to callee
76:
77: Cancel: PROCEDURE [ identifier: Identifier, timeout: CARDINAL ]
78: REPORTS [ NoSuchIdentifier, IdentifierBusy, WrongHost ] = 2;
79: -- cancels a bulk data transfer before it begins
80:
81: END.
82:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.