OpenBSD CVS

CVS log for src/sbin/fsck_ffs/main.c


[BACK] Up to [local] / src / sbin / fsck_ffs

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.55 / (download) - annotate - [select for diffs], Sat Feb 3 18:51:57 2024 UTC (4 months ago) by beck
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5, HEAD
Changes since 1.54: +2 -3 lines
Diff to previous 1.54 (colored)

Remove Softdep.

Softdep has been a no-op for some time now, this removes it to get
it out of the way.

Flensing mostly done in Talinn, with some help from krw@

ok deraadt@

Revision 1.54 / (download) - annotate - [select for diffs], Wed Mar 8 04:43:06 2023 UTC (15 months ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_7_4_BASE, OPENBSD_7_4, OPENBSD_7_3_BASE, OPENBSD_7_3
Changes since 1.53: +1 -2 lines
Diff to previous 1.53 (colored)

Delete obsolete /* ARGSUSED */ lint comments.

ok miod@ millert@

Revision 1.53 / (download) - annotate - [select for diffs], Wed Jan 27 05:03:25 2021 UTC (3 years, 4 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_7_2_BASE, OPENBSD_7_2, OPENBSD_7_1_BASE, OPENBSD_7_1, OPENBSD_7_0_BASE, OPENBSD_7_0, OPENBSD_6_9_BASE, OPENBSD_6_9
Changes since 1.52: +47 -1 lines
Diff to previous 1.52 (colored)

shuffle externs (and definitions) around to satisfy -fno-common
ok mortimer

Revision 1.52 / (download) - annotate - [select for diffs], Mon Sep 24 21:26:02 2018 UTC (5 years, 8 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_6_8_BASE, OPENBSD_6_8, OPENBSD_6_7_BASE, OPENBSD_6_7, OPENBSD_6_6_BASE, OPENBSD_6_6, OPENBSD_6_5_BASE, OPENBSD_6_5, OPENBSD_6_4_BASE, OPENBSD_6_4
Changes since 1.51: +3 -1 lines
Diff to previous 1.51 (colored)

Use unveil(2).  These programs fit together in various strange ways,
so if a problem is encountered with this the whole set needs backout
and study.

Revision 1.51 / (download) - annotate - [select for diffs], Fri Jan 5 09:33:47 2018 UTC (6 years, 5 months ago) by otto
Branch: MAIN
CVS Tags: OPENBSD_6_3_BASE, OPENBSD_6_3
Changes since 1.50: +7 -6 lines
Diff to previous 1.50 (colored)

the value of bflag is a blockno, so use the proper type, avoids
an overflow seen with scanning for alternate superblocks; ok deraadt@

Revision 1.50 / (download) - annotate - [select for diffs], Fri Sep 9 15:37:15 2016 UTC (7 years, 9 months ago) by tb
Branch: MAIN
CVS Tags: OPENBSD_6_2_BASE, OPENBSD_6_2, OPENBSD_6_1_BASE, OPENBSD_6_1
Changes since 1.49: +2 -2 lines
Diff to previous 1.49 (colored)

Tighten pledge for fsdb and eliminate a strcmp("fsdb", getprogname())
by passing a flag to setup().

ok deraadt

Revision 1.49 / (download) - annotate - [select for diffs], Tue Nov 24 21:42:54 2015 UTC (8 years, 6 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_6_0_BASE, OPENBSD_6_0, OPENBSD_5_9_BASE, OPENBSD_5_9
Changes since 1.48: +1 -5 lines
Diff to previous 1.48 (colored)

hotroot is calculated late in fsck_ffs, so defer the pledge.

Revision 1.48 / (download) - annotate - [select for diffs], Mon Nov 23 23:01:20 2015 UTC (8 years, 6 months ago) by deraadt
Branch: MAIN
Changes since 1.47: +4 -3 lines
Diff to previous 1.47 (colored)

Cannot pledge() in the hotroot case
Discovered by krw

Revision 1.47 / (download) - annotate - [select for diffs], Mon Nov 23 19:19:30 2015 UTC (8 years, 6 months ago) by deraadt
Branch: MAIN
Changes since 1.46: +6 -1 lines
Diff to previous 1.46 (colored)

Use pledge "disklabel" as needed.  The theory here is these tools become more
resistant against memory correctup, if a corrupt filesystem is given to them.
ok krw

Revision 1.46 / (download) - annotate - [select for diffs], Thu Oct 15 03:10:05 2015 UTC (8 years, 7 months ago) by deraadt
Branch: MAIN
Changes since 1.45: +2 -2 lines
Diff to previous 1.45 (colored)

fsck_ffs has a ^T signal handler which opens /dev/tty late.  Hoist that
opening to before the pledge, and cache the fd.
looked over by millert

Revision 1.45 / (download) - annotate - [select for diffs], Wed Oct 14 14:33:45 2015 UTC (8 years, 7 months ago) by deraadt
Branch: MAIN
Changes since 1.44: +14 -6 lines
Diff to previous 1.44 (colored)

Only accept one filesystem/device as argument for checking.  Few people
will be calling these directly, and not for the multiple filesystem case.
fsck(8) is generally the parent and will handle things.
ok semarie; this change will also help a goal jsing has

Revision 1.44 / (download) - annotate - [select for diffs], Sat Feb 7 02:09:13 2015 UTC (9 years, 4 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_5_8_BASE, OPENBSD_5_8, OPENBSD_5_7_BASE, OPENBSD_5_7
Changes since 1.43: +5 -5 lines
Diff to previous 1.43 (colored)

When getopt processing flags, many should be flag=1 instead of flag++
ok tedu miod

Revision 1.43 / (download) - annotate - [select for diffs], Tue Jan 20 18:22:21 2015 UTC (9 years, 4 months ago) by deraadt
Branch: MAIN
Changes since 1.42: +1 -2 lines
Diff to previous 1.42 (colored)

Adjust <sys/param.h> comments regarding use of use of MAXFRAG, or
delete <sys/param.h> if now possible
ok guenther

Revision 1.42 / (download) - annotate - [select for diffs], Fri Jan 16 06:39:57 2015 UTC (9 years, 4 months ago) by deraadt
Branch: MAIN
Changes since 1.41: +3 -2 lines
Diff to previous 1.41 (colored)

Replace <sys/param.h> with <limits.h> and other less dirty headers where
possible.  Annotate <sys/param.h> lines with their current reasons.  Switch
to PATH_MAX, NGROUPS_MAX, HOST_NAME_MAX+1, LOGIN_NAME_MAX, etc.  Change
MIN() and MAX() to local definitions of MINIMUM() and MAXIMUM() where
sensible to avoid pulling in the pollution.  These are the files confirmed
through binary verification.
ok guenther, millert, doug (helped with the verification protocol)

Revision 1.41 / (download) - annotate - [select for diffs], Fri Nov 1 17:36:18 2013 UTC (10 years, 7 months ago) by krw
Branch: MAIN
CVS Tags: OPENBSD_5_6_BASE, OPENBSD_5_6, OPENBSD_5_5_BASE, OPENBSD_5_5
Changes since 1.40: +9 -6 lines
Diff to previous 1.40 (colored)

Sprinkle (long long) casts where %lld is being used to print daddr_t
variables. Some random whitespace/knf repairs encountered on the way.

ok miod@ on inspection, feedback & more suggestions from millert@

Revision 1.40 / (download) - annotate - [select for diffs], Tue Jun 11 16:42:04 2013 UTC (11 years ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_5_4_BASE, OPENBSD_5_4
Changes since 1.39: +2 -2 lines
Diff to previous 1.39 (colored)

final removal of daddr64_t.  daddr_t has been 64 bit for a long enough
test period; i think 3 years ago the last bugs fell out.
ok otto beck others

Revision 1.39 / (download) - annotate - [select for diffs], Thu Apr 25 06:43:20 2013 UTC (11 years, 1 month ago) by otto
Branch: MAIN
Changes since 1.38: +3 -2 lines
Diff to previous 1.38 (colored)

big int_t/time_t fixes; ok deraadt@ krw@

Revision 1.38 / (download) - annotate - [select for diffs], Sun Apr 24 07:07:03 2011 UTC (13 years, 1 month ago) by otto
Branch: MAIN
CVS Tags: OPENBSD_5_3_BASE, OPENBSD_5_3, OPENBSD_5_2_BASE, OPENBSD_5_2, OPENBSD_5_1_BASE, OPENBSD_5_1, OPENBSD_5_0_BASE, OPENBSD_5_0
Changes since 1.37: +4 -1 lines
Diff to previous 1.37 (colored)

remove support for (very) old ffs on-disk formats; ok krw@ and no
objection form the usual suspects

Revision 1.37 / (download) - annotate - [select for diffs], Sat Apr 16 16:37:21 2011 UTC (13 years, 1 month ago) by otto
Branch: MAIN
Changes since 1.36: +7 -5 lines
Diff to previous 1.36 (colored)

Blend in some code from netbsd and freebsd that reduces memory consumption
and speeds things up in a lot of cases.
Prompted by Amit Kulkarni; ok krw@ on a slighly diffrenent incarnation

Revision 1.36 / (download) - annotate - [select for diffs], Thu Aug 12 15:26:34 2010 UTC (13 years, 10 months ago) by jsing
Branch: MAIN
CVS Tags: OPENBSD_4_9_BASE, OPENBSD_4_9
Changes since 1.35: +1 -1 lines
Diff to previous 1.35 (colored)

Print the real device name followed by the disklabel UID in parenthesis
when fsck is run against a disklabel UID. This allows a user to determine
which device is really being scanned.

ok krw@

Revision 1.35 / (download) - annotate - [select for diffs], Fri Jul 9 08:06:37 2010 UTC (13 years, 11 months ago) by otto
Branch: MAIN
CVS Tags: OPENBSD_4_8_BASE, OPENBSD_4_8
Changes since 1.34: +1 -19 lines
Diff to previous 1.34 (colored)

kill redundant docheck() function; ok deraadt@

Revision 1.34 / (download) - annotate - [select for diffs], Tue Oct 27 23:59:32 2009 UTC (14 years, 7 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_4_7_BASE, OPENBSD_4_7
Changes since 1.33: +1 -15 lines
Diff to previous 1.33 (colored)

rcsid[] and sccsid[] and copyright[] are essentially unmaintained (and
unmaintainable).  these days, people use source.  these id's do not provide
any benefit, and do hurt the small install media
(the 33,000 line diff is essentially mechanical)
ok with the idea millert, ok dms

Revision 1.33 / (download) - annotate - [select for diffs], Tue Jun 10 23:10:29 2008 UTC (16 years ago) by otto
Branch: MAIN
CVS Tags: OPENBSD_4_6_BASE, OPENBSD_4_6, OPENBSD_4_5_BASE, OPENBSD_4_5, OPENBSD_4_4_BASE, OPENBSD_4_4
Changes since 1.32: +4 -6 lines
Diff to previous 1.32 (colored)

reduce mem usage by about 20% by packing state and type of an inode in a single
byte. Original diff by drahn@; twists by me; ok millert@ thib@

Revision 1.32 / (download) - annotate - [select for diffs], Mon Jun 25 19:59:55 2007 UTC (16 years, 11 months ago) by otto
Branch: MAIN
CVS Tags: OPENBSD_4_3_BASE, OPENBSD_4_3, OPENBSD_4_2_BASE, OPENBSD_4_2
Changes since 1.31: +8 -8 lines
Diff to previous 1.31 (colored)

Teach fsck_ffs about 64-bit block addresses. ok (and help) moritz@ pedro@

Revision 1.31 / (download) - annotate - [select for diffs], Tue Apr 10 16:08:17 2007 UTC (17 years, 2 months ago) by millert
Branch: MAIN
Changes since 1.30: +9 -9 lines
Diff to previous 1.30 (colored)

Add support for checking ffs2 filesystems.  From pedro@ based on
the ufs2 changes in FreeBSD by Kirk Mckusick.

Revision 1.30 / (download) - annotate - [select for diffs], Mon Mar 19 13:27:47 2007 UTC (17 years, 2 months ago) by pedro
Branch: MAIN
Changes since 1.29: +8 -8 lines
Diff to previous 1.29 (colored)

Add FFS2 fields to the superblock, change file system tools to keep
accessing FFS1 fields, okay art@, quite some testing by ckuethe@, simon@
and thib@, thanks.

Revision 1.29 / (download) - annotate - [select for diffs], Fri Feb 9 19:52:32 2007 UTC (17 years, 4 months ago) by otto
Branch: MAIN
CVS Tags: OPENBSD_4_1_BASE, OPENBSD_4_1
Changes since 1.28: +11 -2 lines
Diff to previous 1.28 (colored)

fix a fd leak that happens whe checking multiple file systems and some
of them are clean. ok pedro@ millert@

Revision 1.28 / (download) - annotate - [select for diffs], Thu Feb 8 19:02:23 2007 UTC (17 years, 4 months ago) by otto
Branch: MAIN
Changes since 1.27: +8 -2 lines
Diff to previous 1.27 (colored)

Plug some mem leaks that occur when checking multiple file systems in a
row. ok beck@ pedro@ millert@

Revision 1.27 / (download) - annotate - [select for diffs], Mon Apr 17 09:34:16 2006 UTC (18 years, 1 month ago) by moritz
Branch: MAIN
CVS Tags: OPENBSD_4_0_BASE, OPENBSD_4_0
Changes since 1.26: +3 -3 lines
Diff to previous 1.26 (colored)

Remove "l:" from getopt(3) string, since the option was
removed long ago. From Steffen Wendzel. ok pedro@

Revision 1.26 / (download) - annotate - [select for diffs], Thu Feb 3 05:03:50 2005 UTC (19 years, 4 months ago) by jaredy
Branch: MAIN
CVS Tags: OPENBSD_3_9_BASE, OPENBSD_3_9, OPENBSD_3_8_BASE, OPENBSD_3_8, OPENBSD_3_7_BASE, OPENBSD_3_7
Changes since 1.25: +4 -3 lines
Diff to previous 1.25 (colored)

sync usage output

Revision 1.25 / (download) - annotate - [select for diffs], Mon Jun 2 20:06:15 2003 UTC (21 years ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_3_6_BASE, OPENBSD_3_6, OPENBSD_3_5_BASE, OPENBSD_3_5, OPENBSD_3_4_BASE, OPENBSD_3_4
Changes since 1.24: +3 -7 lines
Diff to previous 1.24 (colored)

Remove the advertising clause in the UCB license which Berkeley
rescinded 22 July 1999.  Proofed by myself and Theo.

Revision 1.24 / (download) - annotate - [select for diffs], Fri Aug 23 09:09:04 2002 UTC (21 years, 9 months ago) by gluk
Branch: MAIN
CVS Tags: OPENBSD_3_3_BASE, OPENBSD_3_3, OPENBSD_3_2_BASE, OPENBSD_3_2
Changes since 1.23: +9 -18 lines
Diff to previous 1.23 (colored)

- Convert function definitions to new style
- eliminate trailing whitespace
- remove casts that aren't needed.
- make rcsid strings const, for -Wall compilation.

 from tedu <grendel@zeitbombe.org>

Revision 1.23 / (download) - annotate - [select for diffs], Tue Aug 20 21:57:56 2002 UTC (21 years, 9 months ago) by deraadt
Branch: MAIN
Changes since 1.22: +7 -3 lines
Diff to previous 1.22 (colored)

clean some more signal races, some cannot be fixed

Revision 1.22 / (download) - annotate - [select for diffs], Sun Jun 9 08:13:05 2002 UTC (22 years ago) by todd
Branch: MAIN
Changes since 1.21: +3 -3 lines
Diff to previous 1.21 (colored)

rm trailing whitespace

Revision 1.21 / (download) - annotate - [select for diffs], Tue Apr 23 18:54:12 2002 UTC (22 years, 1 month ago) by espie
Branch: MAIN
Changes since 1.20: +4 -4 lines
Diff to previous 1.20 (colored)

In mount.h, rename field export -> export_info, to avoid collision with C++.
Synch files that use that field.

(This argument is an internal interface specific to OpenBSD, so it won't
cause compatibility problems.)

(No bump, not an ABI change).

ok art, millert...

Revision 1.20 / (download) - annotate - [select for diffs], Sat Feb 16 21:27:34 2002 UTC (22 years, 3 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_3_1_BASE, OPENBSD_3_1
Changes since 1.19: +6 -6 lines
Diff to previous 1.19 (colored)

Part one of userland __P removal.  Done with a simple regexp with some minor hand editing to make comments line up correctly.  Another pass is forthcoming that handles the cases that could not be done automatically.

Revision 1.19 / (download) - annotate - [select for diffs], Mon Nov 5 07:39:16 2001 UTC (22 years, 7 months ago) by mpech
Branch: MAIN
Changes since 1.18: +3 -3 lines
Diff to previous 1.18 (colored)

kill more registers;

millert@ ok

Revision 1.18 / (download) - annotate - [select for diffs], Fri Mar 2 08:33:55 2001 UTC (23 years, 3 months ago) by art
Branch: MAIN
CVS Tags: OPENBSD_3_0_BASE, OPENBSD_3_0, OPENBSD_2_9_BASE, OPENBSD_2_9
Changes since 1.17: +14 -5 lines
Diff to previous 1.17 (colored)

Make fsck aware of soft updates.
We had this in the tree 1997, but it went away because it was too close to
release.
Ok: csapuntz@
(as a size note: It's really good to test fsck when you are torture testing
the filesystems)

Revision 1.17 / (download) - annotate - [select for diffs], Fri Dec 29 15:02:58 2000 UTC (23 years, 5 months ago) by angelos
Branch: MAIN
Changes since 1.16: +3 -3 lines
Diff to previous 1.16 (colored)

Don't mark filesystem clean if fsck needs to be rerun (PR 1572)

Revision 1.16 / (download) - annotate - [select for diffs], Sat Jan 22 20:24:56 2000 UTC (24 years, 4 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_2_8_BASE, OPENBSD_2_8, OPENBSD_2_7_BASE, OPENBSD_2_7
Changes since 1.15: +2 -4 lines
Diff to previous 1.15 (colored)

remove extra externs not needed because of unistd.h (rest of tree will be done later.. contact me if you want to help)

Revision 1.15 / (download) - annotate - [select for diffs], Mon Mar 1 07:45:17 1999 UTC (25 years, 3 months ago) by d
Branch: MAIN
CVS Tags: OPENBSD_2_6_BASE, OPENBSD_2_6, OPENBSD_2_5_BASE, OPENBSD_2_5
Changes since 1.14: +4 -2 lines
Diff to previous 1.14 (colored)

SIGINFO support

Revision 1.14 / (download) - annotate - [select for diffs], Thu Feb 5 03:22:18 1998 UTC (26 years, 4 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_2_4_BASE, OPENBSD_2_4, OPENBSD_2_3_BASE, OPENBSD_2_3
Changes since 1.13: +3 -3 lines
Diff to previous 1.13 (colored)

Ha! Caught Todd making a mistake!

Revision 1.13 / (download) - annotate - [select for diffs], Thu Feb 5 00:26:24 1998 UTC (26 years, 4 months ago) by millert
Branch: MAIN
Changes since 1.12: +5 -3 lines
Diff to previous 1.12 (colored)

Add usage line

Revision 1.12 / (download) - annotate - [select for diffs], Mon Oct 6 20:22:33 1997 UTC (26 years, 8 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_2_2_BASE, OPENBSD_2_2
Changes since 1.11: +6 -16 lines
Diff to previous 1.11 (colored)

back out vfs lite2 till after 2.2

Revision 1.11 / (download) - annotate - [select for diffs], Mon Oct 6 15:33:33 1997 UTC (26 years, 8 months ago) by csapuntz
Branch: MAIN
Changes since 1.10: +18 -8 lines
Diff to previous 1.10 (colored)

VFS Lite2 Changes

Revision 1.10 / (download) - annotate - [select for diffs], Mon Jul 14 20:59:11 1997 UTC (26 years, 11 months ago) by deraadt
Branch: MAIN
Changes since 1.9: +2 -2 lines
Diff to previous 1.9 (colored)

that was not a nice change

Revision 1.9 / (download) - annotate - [select for diffs], Mon Jul 14 14:16:47 1997 UTC (26 years, 11 months ago) by graichen
Branch: MAIN
Changes since 1.8: +4 -4 lines
Diff to previous 1.8 (colored)

change the output so that it fits into 80 columns

Revision 1.8 / (download) - annotate - [select for diffs], Wed Jun 25 18:12:16 1997 UTC (26 years, 11 months ago) by kstailey
Branch: MAIN
Changes since 1.7: +5 -5 lines
Diff to previous 1.7 (colored)

(foo *)0 -> NULL

Revision 1.7 / (download) - annotate - [select for diffs], Wed Jan 15 23:41:46 1997 UTC (27 years, 5 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_2_1_BASE, OPENBSD_2_1
Changes since 1.6: +3 -3 lines
Diff to previous 1.6 (colored)

getopt(3) returns -1 when out of args, not EOF, whee!

Revision 1.6 / (download) - annotate - [select for diffs], Sun Oct 20 08:36:35 1996 UTC (27 years, 7 months ago) by tholo
Branch: MAIN
Changes since 1.5: +25 -39 lines
Diff to previous 1.5 (colored)

Sync with NetBSD 961019

Revision 1.5 / (download) - annotate - [select for diffs], Sat Oct 12 03:06:54 1996 UTC (27 years, 8 months ago) by tholo
Branch: MAIN
Changes since 1.4: +4 -2 lines
Diff to previous 1.4 (colored)

From Kirk McKusick:
  If a directory somehow develops a hole (that is a block pointer
  that has a value of zero), fsck would give the filesystem a clean
  bill of health, but the kernel would panic when accessing the
  directory with the hole. Fsck now checks for holes in directories.
  If found in preen mode, fsck fails. In manual mode, it can be
  directed to shorten the directory to the beginning of the hole. A
  more complete solution would be to allocate a block to fill the
  hole. However, this is a lot more work for a `cannot happen' error,
  so the extra effort seems unwarranted.

Revision 1.4 / (download) - annotate - [select for diffs], Sun Jun 23 14:30:29 1996 UTC (27 years, 11 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_2_0_BASE, OPENBSD_2_0
Changes since 1.3: +2 -1 lines
Diff to previous 1.3 (colored)

update rcsid

Revision 1.3 / (download) - annotate - [select for diffs], Mon Jun 10 00:03:03 1996 UTC (28 years ago) by deraadt
Branch: MAIN
Changes since 1.2: +12 -1 lines
Diff to previous 1.2 (colored)

add usage printout

Revision 1.2 / (download) - annotate - [select for diffs], Mon Nov 6 21:11:08 1995 UTC (28 years, 7 months ago) by deraadt
Branch: MAIN
Changes since 1.1: +3 -3 lines
Diff to previous 1.1 (colored)

complete ufs -> ffs change (From John Kohl; PR #1403)

Revision 1.1.1.1 / (download) - annotate - [select for diffs] (vendor branch), Wed Oct 18 08:43:32 1995 UTC (28 years, 8 months ago) by deraadt
CVS Tags: netbsd_1_1
Changes since 1.1: +0 -0 lines
Diff to previous 1.1 (colored)

initial import of NetBSD tree

Revision 1.1 / (download) - annotate - [select for diffs], Wed Oct 18 08:43:32 1995 UTC (28 years, 8 months ago) by deraadt
Branch: MAIN

Initial revision

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.