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