summaryrefslogtreecommitdiff
path: root/ufs-fsck/ChangeLog
blob: 6c1e84a2e6d0a9e97f474add177ef08870f813ec (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
Fri Sep  6 16:44:07 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>

	* main.c (argp_program_version): Fix typo.

Thu Sep  5 11:42:21 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>

	* main.c: Include <version.h>.
 	(argp_program_version): Define with STANDARD_HURD_VERSION. 
	
Fri Aug 16 10:25:37 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>

	* dir.c (record_directory): Maximum number of block pointers to
	record is NDADDR + NIADDR, not NDADDR * NIADDR.
	* pass2.c: Include <assert.h>.
 	(pass2): Before copying block addresses to DINO in basic
	integrity check, assert that DNP->i_numblks isn't too big.

Mon Aug 12 11:39:12 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>

	* Makefile (dir): Now ufs-fsck.

Tue Jul 23 19:32:09 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* inode.c (allocino): `struct timespec' now uses a field prefix
	of `tv_'.
	* utilities.c (pinode): Likewise.

Thu Jul 18 14:55:14 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* pass2.c (pass2): If an entire directory block is null, allow
	preen to patch it into a normal empty directory entry.

Sat Jul  6 19:59:27 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* main.c (argp_program_version): New variable.
	<hurd.h>: New include.
	
Mon Jul  1 12:55:48 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* pass2.c (pass2): Don't skip empty directories in `.' and `..'
 	correctness check; we don't clear them the way BSD does, so we
 	want `.' and `..'  to get created for us.  Also handle `.' before
 	`..' so that they get created in the usual order for empty
 	directories.

	* dir.c (makeentry): After successful directory expansion, write
 	out modified directory inode.

	* pass4.c (pass4): If a reconnect fails while we are preening,
 	give up.

Mon Jun 24 10:19:39 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* utilities.c (errexit, punt): Exit with status 8 for catastrophic
 	failures.

Thu May 23 14:12:21 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* pass2.c (pass2): Don't clear all node types in directories, just
 	clear those that are wrong.

Tue May 14 16:49:46 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* pass2.c (pass2): Fix up test in preen case.

Tue May 14 15:29:36 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* pass2.c (pass2): Handle directory entry type fields better for
 	Hurd.

Sat May 11 01:07:49 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* main.c (parse_opt): Use ARGP_ERR_UNKNOWN instead of EINVAL.

Thu May  9 20:12:51 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* pass1b.c (pass1b): Bother to initialize NUMBER.

Fri May  3 00:48:39 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* main.c (nice_size, show_stats): New functions.
	(main): Use show_stats.

Wed May  1 13:59:06 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* main.c (main): Shorten summary message so that it fits on one line.
	* utilities.c (no_preen): New function.
	(problem, warning, pinode): Use it.
	(warning): Don't flush all pending problems, just our own.
	* dir.c (linkup): Consistently put quotes around filenames.

	* main.c (preen, num_files): New variables.
	(main): Implement clean-bit checking in preen mode, and print
	summary statistics.
	(main, options): Add --force & --silent options.
	* pass1.c (pass1): Increment NUM_FILES.
	When clearing inode due to bad blocks, continue.
	* inode.c (allocino, freeino): Frob NUM_FILES.
	* fsck.h (force): New declaration.
	* pass5.c (pass5): Vary clean msg depending on whether FSMODIFIED.
	* setup.c (setup): Use error to print error msgs.
	<error.h>, <errno.h>: New includes.

	* utilities.c (problem, warning, pextend, pfail): New functions.
	(pinode, pfix, reply): Use new problem recording stuff.
	(push_problem, resolve_problem, flush_problems): New functions.
	(struct problem): New type.
	(problems, free_problems): New variables.
	(retch, punt): New functions.
	* fsck.h (problem, warning, pextend, pfail): New declarations.
	(pinode): Update declaration.
	* dir.c (validdir, makeentry, linkup): Use new printing functions.
	* pass1.c (pass1): Likewise.
	* pass1b.c (pass1b): Likewise.
	* pass2.c (pass2): Likewise.
	* pass3.c (pass3): Likewise.
	* pass4.c (pass4): Likewise.
	* pass5.c (pass5): Likewise.
	* setup.c (setup): Likewise.

Tue Apr 30 19:06:42 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* pass5.c (pass5): Be sure to call pwarn before pfix.
	* main.c (main): Don't print large obnoxious banner if PREEN.

Fri Apr 26 16:20:37 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* inode.c (allocino): Parenthesize test correctly.

	* fsck.h (swab_disk): Define as constant zero.
	
	* pass5.c (pass5): If not marked clean, but now it is, then offer
 	to mark it clean.
	* utilities.c (reply): Set fix_denied anytime we return 0.
	* fsck.h (fix_denied): New variable.

Wed Apr 24 13:32:39 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* pass1.c (pass1): Don't print block numbers as we go anymore.

Tue Apr 23 10:11:49 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* pass5.c (pass5): Correctly track contig summaries even though
 	they aren't used by the filesystem; we still need to preserve the
 	format.

Mon Apr 15 12:51:41 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* Makefile (vpath tables.c): Find ufs directory in $(top_srcdir). 

Tue Apr  2 09:00:53 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* pass1.c (pass1): Print mode correctly in unknown file type case.
	Recognize inode type IFSOCK too.

Mon Mar 18 19:48:39 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* main.c (main): Pass new arg to argp_parse.  Use argp_usage correctly.

Thu Oct 19 17:45:12 1995  Miles Bader  <miles@gnu.ai.mit.edu>

	* main.c (main): Exit with a non-zero status if we fixed anything.
	Use argp to parse options.
	(options): Converted to argp format.
	(args_doc): New variable.
	(USAGE, usage, SHORT_OPTIONS): Removed.
	Include <argp.h> instead of <getopt.h>.
	* Makefile ($(target)): Depend on libshouldbeinlibc.a.

Fri Sep 22 16:55:03 1995  Miles Bader  <miles@gnu.ai.mit.edu>

	* utilities.c (pfix): New function.
	(pfatal, pwarn, errexit): Print DEVICE_NAME too if in preen mode.
	* fsck.h: Declare DEVICE_NAME.
	* setup.c (setup): Set DEVICE_NAME.
	* pass1.c, pass2.c, pass3.c, pass4.c, pass5.c (pass1, pass2,
	pass3, pass4, pass5): Call pfix instead of printf.
	* pass1.c (pass1): Only print progress report if not in preen mode.
	* main.c (main): Only print section headers if not in preen mode.

Wed Sep 20 09:11:59 1995  Miles Bader  <miles@churchy.gnu.ai.mit.edu>

	* utilities.c (pinode): Take a message & args to print as well.
	* fsck.h: Change declaration of pinode.
	* pass2.c (pass2): Use changed pinode.
	* pass3.c (pass3): Use changed pinode.
	* pass4.c (pass4): Use changed pinode.

Tue Sep 19 15:37:02 1995  Miles Bader  <miles@churchy.gnu.ai.mit.edu>

	* pass1.c (pass1): Change the extent of DBWARN & IBWARN so that
	they actually work.
	* pass2.c (pass2): Adjust our record of link counts when we
	add/change dir entries; also print error messages when we can't.
	* pass4.c (pass4): If an unlinked file can't be reconnected, offer
	to clear it.  Once a reconnect attempt fails, don't try again.
	* dir.c (linkup): Print the value of LFNAME rather than `lost+found'.
	(searchdir, changeino): Fix backward compare.
	(linkup): Don't fail when makeentry succeeds.
	(searchdir): Make searchdir return zero if there's an error
 	during the search.
	(linkup): Print appropiate error messages if searchdir fails.
	(validdir): Get rid of extra newlines in error messages --
 	everyone who calls this routine prints extra information if it
 	fails, which should immediately follow.
	* main.c (main): Use getopt to parse command line options.
	(usage): New function.
	(options): New variable.
	(lfname, lfmode): Variables moved here from setup.c.
	(lfname): Made into a char* so that we can change it.
	(lfmode): Get rid of IFDIR; it's added when necessary.
	* fsck.h: Change LFNAME to char*.
	* setup.c (lfname, lfmode): Variables moved to main.c.

Sat Sep  9 12:12:59 1995  Miles Bader  <miles@churchy.gnu.ai.mit.edu>

	* Makefile (target): Changed to `fsck.ufs'.
	(installationdir): New variable, install into $(sbindir).

Thu Jul  6 15:33:46 1995  Michael I Bushnell  <mib@duality.gnu.ai.mit.edu>

	* fsck.h (lookup_directory): New decl.

	* pass1.c (pass1): Remove assignment from if test.
	* utilities.c (pinode): Likewise.

	* Makefile (tables.o): Delete rule.
	(vpath tables.c): Tell where to find tables.c.

	* Makefile: Removed dependencies that are now automatically
 	generated.

Thu Nov  3 17:19:03 1994  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>

	* Makefile (dir): Changed to fsck.
	(target): Changed to fsck.

Wed Nov  2 14:39:13 1994  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>

	* pass2.c (pass2): Use DIRECT_NAMLEN instead of d_namlen
	throughout.
	* dir.c (searchdir): Likewise.
	(changeino): Likewise.
	(makeentry): Likewise.

Mon Oct 17 16:07:56 1994  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>

	* inode.c (inode_iterate): FN takes new third arg.
	Keep track of new var `offset' and pass it to FN.
	* pass2.c (pass2/checkdirblock): New third arg.
	Only scan DIRBLKSIZ chunks to the total size of the file.
	* dir.c (searchdir/checkdirblock): Likewise.
	(changeino/checkdirblock): Likewise.
	(makeentry/checkdirblock): Likewise.
	* pass1.c (pass1/checkblock): New third arg (ignored).
	* pass1b.c (pass1b/checkblock): Likewise.

	* inode.c (inode_iterate): Compute MAXB correctly.

	* utilities.c (getinode): Multiple ino_to_fsbo by
	sizeof (struct dinode).
	(write_inode): Likewise.
	(getinode): Inode buffer needs to be a full block, not a 
	fragment.

Fri Oct 14 21:07:09 1994  Michael I Bushnell  <mib@churchy.gnu.ai.mit.edu>

	* utilities.c (lastifrag): New variable.
	(getinode): Use lastifrag instead of buf; Only I/O new block 
	if lastifrag isn't what we want.
	(write_inode): Likewise.

Fri Oct 14 17:44:59 1994  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>

	* setup.c (setup): Test ISCHR, not ISDIR.
	Fix NCYL against NCG * CPG test.
	Bother to set MAXFSBLOCK, MAXINO, and DIRECT_SYMLINK_EXTENSION.