1 :Info: sweep_disk_: 1982-12-28 sweep_disk_
2
3
4 Entry points in sweep_disk_:
5 List is generated by the help command
6
7
8 :Entry: sweep_disk_: 1982-11-04 sweep_disk_
9
10
11 Function:
12 The sweep_disk_ subroutine walks through the subtree below a specified
13 node of the directory hierarchy, calling a user-supplied subroutine
14 once for every entry in every directory in the subtree.
15
16
17 Syntax:
18 declare sweep_disk_ entry char168 aligned entry;
19 call sweep_disk_ base_path subroutine;
20
21
22 Arguments:
23 base_path
24 is the pathname of the directory that is the base node of the
25 subtree to be scanned. Input
26 subroutine
27 is an entry point called for each branch or link in the subtree see
28 "User-Supplied Subroutine" below. Input
29
30
31 User-Supplied Subroutine:
32 The subroutine provided to sweep_disk_ should have the following
33 declaration and call sequence:
34
35 declare subroutine entry char168 aligned char32 aligned
36 fixed bin char32 aligned ptr ptr;
37 call subroutine path dir_name level entryname b_ptr n_ptr;
38
39
40 User-Supplied Subroutine Arguments:
41 path
42 is the pathname of the directory immediately superior to the
43 directory that contains the current entry. Input
44 dir_name
45 is the name of the directory that contains the current entry.
46 Input
47 level
48 is the number of levels deep from the base_path directory of the
49 subtree. Input
50
51
52 entryname
53 is the primary name on the current entry. Input
54 b_ptr
55 is a pointer to the branch structure returned by hcs_$star_list for
56 the current entry. Input
57 n_ptr
58 is a pointer to the names area for the immediately superior
59 directory of the current entry returned by hcs_$star_list. Input
60
61
62 :Entry: dir_list: 1982-11-04 sweep_disk_$dir_list
63
64
65 Function: This entry point operates in the same way as sweep_disk_ but
66 is much less expensive to use and does not return
67 date_time_contents_modified, date_time_used, or bit_count.
68
69
70 Syntax:
71 declare sweep_disk_$dir_list entry char168 aligned entry;
72 call sweep_disk_$dir_list base_path subroutine;
73
74
75 Arguments:
76 base_path
77 is the pathname of the directory that is the base node of the
78 subtree to be scanned. Input
79 subroutine
80 is an entry point called for each branch or link in the subtree see
81 "Notes" below. Input
82
83
84 Notes: The user-supplied subroutine is called in the same way as
85 for sweep_disk_, but b_ptr points instead to the branch structure
86 returned by hcs_$star_dir_list. See the hcs_$star_ subroutine.
87 See "User-Supplied Subroutine" in the sweep_disk_ entrypoint for
88 syntax of this subroutine.
89
90 If the base_path argument to the sweep_disk_ subroutine is the
91 root ">", the directory >process_dir_dir is omitted from the tree
92 walk.
93
94
95 The sweep_disk_ subroutine attempts to force access to the directories
96 in the subtree by adding an ACL term of the form "sma
97 Person.Project.tag" to each directory ACL, and deleting that ACL term
98 when finished processing the directory. If the user does not have
99 sufficient access to add this ACL term for a given directory, the
100 subroutine processes those parts of the subtree under it where the user
101 already has sufficient access to list the directories.
102
103
104 :Entry: loud: 1982-11-04 sweep_disk_$loud
105
106
107 Function: This entry point is used for debugging subsystems that use
108 the sweep_disk_ subroutine. It sets an internal static flag in
109 sweep_disk_ that causes sweep_disk_ to call com_err_ and report any
110 errors encountered in listing directories or setting ACLs. Since
111 sweep_disk_$loud takes no arguments, and should only be used for
112 debugging, it can readily be invoked as a command "sweep_disk_$loud"
113 to cause sweep_disk_ to exhibit this debugging behavior for the rest of
114 the process. There is no corresponding entry point to turn the switch
115 off. Because this is a static switch, and affects all callers of
116 sweep_disk_, it should not be turned on, except to debug, when it is
117 important to understand the exact nature of any errors encountered.
118 Normally, sweep_disk_ ignores errors and continues as best it can.
119
120
121 Syntax:
122 declare sweep_disk_$loud entry ;
123 call sweep_disk_$loud ;
124
125
126 :hcom:
127
128
129
130 /****^ HISTORY COMMENTS:
131 1) change2020-05-19GDixon, approve2021-02-22MCR10088,
132 audit2021-05-27Swenson, install2021-05-27MR12.6g-0056:
133 Fix info seg format errors reported by verify_info.
134 END HISTORY COMMENTS */
135
136
137