1 03/08/85 dprint_
2
3
4 This subroutine contains several entry points used to submit requests
5 to the I/O daemon for printing or punching of segments and multisegment
6 files.
7
8
9 Entry points in dprint_:
10 List is generated by the help command
11
12
13 :Entry: dprint_: 03/08/85 dprint_
14
15
16 Function:
17 The dprint_ entry point adds a request to print, punch, or plot a
18 segment or multisegment file to the specified queue.
19
20
21 Syntax:
22 declare dprint_ entry char* char* ptr fixed bin35;
23 call dprint_ dir_name entryname dprint_arg_ptr code;
24
25
26 Arguments:
27 dir_name
28 is the absolute pathname of the containing directory. Input
29 entryname
30 is the entry name of the segment, multisegment file, or link to the
31 segment or multisegment file to be printed, punched, or plotted.
32 Input
33 dprint_arg_ptr
34 is a pointer to the dprint_arg structure described in system
35 include file dprint_arg.incl.pl1 that defines the options for
36 this request. If this pointer is null, the default settings are
37 used for all options. Input
38 code
39 is a standard status code. Output
40
41
42 Notes: The dprint_ subroutine uses the structure, defined in
43 the system include file dprint_arg.incl.pl1, to determine the details
44 of the request. If no structure is supplied, default values are used.
45
46
47 :Entry: check_daemon_access: 03/08/85 dprint_$check_daemon_access
48
49
50 Function: This entry point checks the I/O daemon's access to a given
51 segment or multisegment file. It returns whether the daemon
52 responsible for a given request type has "r" access to the file and "s"
53 access to the containing directory and whether the I/O daemon
54 coordinator can delete the file if requested.
55
56
57 Syntax:
58 declare dprint_$check_daemon_access entry char* char* char*
59 bit1 aligned bit1 aligned bit1 aligned char*
60 fixed bin35;
61 call dprint_$check_daemon_access dirname entryname request_type
62 delete_permission read_permission status_permission
63 driver_userid code;
64
65
66 Arguments:
67 dirname
68 is the absolute pathname of the containing directory. Input
69 entryname
70 is the entry name of the segment, or multisegment file, or a link to
71 the segment or multisegment file for which the daemon's access is to
72 be checked. Input
73 request_type
74 is the name of the request type in which a request to print, punch
75 or plot the file will be placed. The access of the driver process
76 for this request type will be returned. Input
77 delete_permission
78 indicates whether the I/O coordinator has sufficient access to
79 delete the file if requested. The coordinator requires "m" access
80 to the containing directory to delete the file. Output
81
82
83 read_permission
84 indicates whether the driver process of the given request type has
85 "r" access to the given segment or multisegment file. Output
86 status_permission
87 indicates whether the driver process of the given request type has
88 "s" access to the directory containing the segment or multisegment
89 file. Output
90 driver_userid
91 is the name of the process that processes requests for the specified
92 type. This value is in the form "Person_id.Project_id.*". Output
93 code
94 is a standard system status code. Output
95
96
97 Notes: The user must have "s" access to the directory containing the
98 segment or multisegment file to determine whether the driver has read
99 access to the file.
100
101 The user must have "s" access to the directory containing the directory
102 containing the segment or multisegment file in order to determine
103 whether the I/O coordinator can delete the file and whether the driver
104 process has "s" access to the containing directory.
105
106
107 :Entry: queue_contents: 03/08/85 dprint_$queue_contents
108
109
110 Function: This entry point returns the number of requests in a
111 specific I/O daemon queue.
112
113
114 Syntax:
115 declare dprint_$queue_contents entry char* fixed bin fixed bin
116 fixed bin35;
117 call dprint_$queue_contents request_type queue n_requests code;
118
119
120 Arguments:
121 request_type
122 is the name of the request type whose queue is to be checked.
123 Input
124 queue
125 is the number of the queue to be examined. If -1 is specified, the
126 default queue of the given request type is checked and the number of
127 the default queue is returned in this parameter. Input/Output
128 n_requests
129 is the number of requests in the specified queue. Output
130 code
131 is a standard system status code. Output
132
133
134 :Entry: request_id: 11/27/85 dprint_$request_id
135
136
137 The request_id entry point adds a request to print, punch, or plot a
138 segment or multisegment file to the specified queue, and returns the
139 message identifier of the queue entry being made.
140
141
142 Syntax:
143 declare dprint_$request_id entry char* char* ptr fixed bin 71
144 fixed bin35;
145 call dprint_$request_id dir_name entryname arg_ptr request_id
146 code;
147
148
149 Arguments:
150 dir_name
151 is the absolute pathname of the containing directory. Input
152 entryname
153 is the entry name of the segment, multisegment file, or link to the
154 segment or multisegment file to be printed, punched, or plotted.
155 Input
156 dprint_arg_ptr
157 is a pointer to the dprint_arg structure described in system
158 include file dprint_arg.incl.pl1 that defines the options for
159 this request. If this pointer is null, the default settings are
160 used for all options. Input
161 request_id
162 is the message identifier of the request being enqueued. Output
163 code
164 is a standard status code. Output
165
166
167 Notes: The dprint_$request_id entry uses the structure defined in
168 the system include file dprint_arg.incl.pl1 to determine the details
169 of the request. If no structure is supplied, default values are used.