Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 1 Nov 2003 20:34:41 +1100 (EST)
From:      Bruce Evans <bde@zeta.org.au>
To:        Bruce Evans <bde@freebsd.org>
Cc:        cvs-all@freebsd.org
Subject:   Re: cvs commit: src/usr.sbin/mtree compare.c
Message-ID:  <20031101203313.D3593@gamplex.bde.org>
In-Reply-To: <200311010843.hA18hsAg001012@repoman.freebsd.org>
References:  <200311010843.hA18hsAg001012@repoman.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 1 Nov 2003, Bruce Evans wrote:

> bde         2003/11/01 00:43:54 PST
>
>   FreeBSD src repository
>
>   Modified files:
>     usr.sbin/mtree       compare.c
>   Log:
>   Fixed breakage of my world in rev.1.30.  #include <sys/time.h> instead of
>   depending on namespace pollution in <sys/stat.h> for the declarations of
>   struct timeval and utimes().
>
>   Fixed some style bugs in rev.1.30 and some nearby style bugs (mainly
>   unsorting and missing or extra blank lines).
>
>   Removed a wrong comment that was obtained from NetBSD in rev.1.14.  It said
>   that chflags() reset the times that were set "above" by utimes(), but
>   utimes wasn't "above" in FreeBSD until rev.1.30, and chflags() does't
>   actually reset the times.
>
>   Revision  Changes    Path
>   1.31      +9 -13     src/usr.sbin/mtree/compare.c

This doesn't fix any of the more fundamental bugs in rev.1.30:
- setting modtimes cannot make the times match the spec in general, since
  we record and compare times in nanoseconds but can only set them in
  microseconds.
- the modtime setting should have been obained from NetBSD for
  compatibility and correctness.  NetBSD (a 2-3 month old version)
  only sets the modtimes if an the undocumented -t option is specified.
  It reduces the previous bug by only comparing times in microseconds
  (or seconds for the non-BSD_4_4 case).
- the access time is clobbered by setting it to the modtime.

NetBSD also has options to control setting of file flags.  Its -i (set
schg and/or sappnd) is very incompatible with FreeBSD's -i (indent 4
spaces).

Bruce



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20031101203313.D3593>