1 /* BEGIN INCLUDE FILE ... _imft_ft_commands.incl.pl1 */ 2 3 /* Created: April 1982 by G. Palter */ 4 /* Modified: July 1982 by G. Palter for true AIM support */ 5 /* Modified: March 1983 by Robert Coren to add remote request record */ 6 /* Modified: April 1983 by Robert Coren to add eof_reply record */ 7 8 9 /****^ HISTORY COMMENTS: 10 1) change(88-11-10,Beattie), approve(88-08-01,PBF7948), 11 audit(88-11-14,Farley), install(88-11-14,MR12.2-1214): 12 Change declaration of request_number to match up with what is 13 coming from request_descriptor structure to prevent size condtions. 14 END HISTORY COMMENTS */ 15 16 17 /* Command and reply control records used by the IMFT file transfer protocol */ 18 19 20 /* Command/reply types */ 21 22 dcl (IMFT_BOF initial (11), /* start a file/subtree transfer */ 23 IMFT_EOF initial (12), /* end of a file/subtree transfer */ 24 IMFT_REMOTE_REQUEST initial (13)) /* request for remote transfer */ 25 fixed binary (7) unaligned unsigned static options (constant); 26 27 28 /* File/subtree transfer command record */ 29 30 dcl 1 bof_command aligned based (bof_command_ptr), 31 2 global, /* data pertaining to both systems */ 32 3 object_type fixed binary (2), /* type of object (segment/directory/MSF) */ 33 3 object_access_class bit (72), /* access class of the object we transmitted */ 34 3 request_number fixed binary (35), /* daemon's sequence number for this request */ 35 3 queue fixed binary, /* priority queue */ 36 3 flags aligned, 37 4 notify bit (1) unaligned, /* ON => send notifications when successfull */ 38 4 continued bit (1) unaligned, /* ON => this is continuation of a previous request */ 39 4 restarted bit (1) unaligned, /* ON => this is a restart of a previous request */ 40 4 priority_request bit (1) unaligned, /* ON => this request was given high priority */ 41 4 pad bit (32) unaligned, 42 2 local_system, /* data pertaining to local (source) system */ 43 3 local_user character (32) unaligned, /* Person.Project of user who requested the transfer */ 44 3 local_user_authorization bit (72), /* process authorization of the user who issued request */ 45 3 local_user_ring fixed binary, /* ring of execution of user when he issued request */ 46 3 local_dirname character (168) unaligned, /* where the branch is on the local system */ 47 3 local_ename character (32) unaligned, /* ... */ 48 2 foreign_system like ft_request.request; /* data pertaining to foreign (target) system */ 49 50 dcl bof_command_ptr pointer; 51 52 53 /* Remote request command record */ 54 55 dcl 1 remote_request aligned based (rem_req_ptr), 56 2 global, 57 3 request_number fixed binary (35), /* sequence # of this request */ 58 3 queue fixed binary, /* priority queue in which this request was submitted */ 59 3 flags, 60 4 priority_request bit (1) unaligned, 61 4 pad bit (35) unaligned, 62 2 local_system, 63 3 local_user character (32) aligned, /* Person.Project of user who submitted the request */ 64 3 local_user_authorization bit (72), /* process authorization of user who issued the request */ 65 3 local_user_ring fixed binary, /* ring of execution of user when request issued */ 66 2 request_info like ft_request; /* defined in _imft_ft_request.incl.pl1 */ 67 68 dcl rem_req_ptr pointer; 69 70 71 /* File/subtree transfer reply record */ 72 73 dcl 1 bof_reply aligned based (bof_reply_ptr), 74 2 request_number fixed binary (35), /* sequence # of the request for which this is the reply */ 75 2 abort_request bit (1) aligned, /* ON => remote system refuses to accept this file/subtree */ 76 2 abort_message character (1024) varying; /* reason why the remote system rejects the request */ 77 78 dcl bof_reply_ptr pointer; 79 80 81 /* File_subtree end-of-file command record */ 82 83 dcl 1 eof_command aligned based (eof_command_ptr), 84 2 request_number fixed binary (35), 85 2 backup_errors bit (1) aligned; /* ON => errors reported by backup_dump_ */ 86 87 dcl eof_command_ptr pointer; 88 89 90 /* File/subtree end-of-file reply record */ 91 92 dcl 1 eof_reply aligned based (eof_reply_ptr), 93 2 request_number fixed binary (35), /* sequence # of the request whose completion this acknowledges */ 94 2 error bit (1) aligned; /* ON => remote system was unable to load the object successfully */ 95 96 dcl eof_reply_ptr pointer; 97 98 99 /* Types of objects which can be transmitted by IMFT */ 100 101 dcl (LINK initial (0), /* links actually aren't allowed, but... */ 102 SEGMENT initial (1), 103 DIRECTORY initial (2), /* actually the entire subtree is transferred */ 104 MSF initial (3)) 105 fixed binary (2) static options (constant); 106 107 dcl OBJECT_TYPES (0:3) character (32) static options (constant) initial ( 108 "link", "segment", "subtree", "multisegment file"); 109 110 /* END INCLUDE FILE ... _imft_ft_commands.incl.pl1 */