diff options
-rw-r--r-- | pkgtools/rdigest/DESCR | 50 | ||||
-rw-r--r-- | pkgtools/rdigest/distinfo | 4 | ||||
-rw-r--r-- | pkgtools/rdigest/patches/patch-ab | 34 |
3 files changed, 24 insertions, 64 deletions
diff --git a/pkgtools/rdigest/DESCR b/pkgtools/rdigest/DESCR index fec28fe43ca..f31cf690b86 100644 --- a/pkgtools/rdigest/DESCR +++ b/pkgtools/rdigest/DESCR @@ -1,11 +1,6 @@ -This utility is a wrapper for the md5(3), sha1(3) and rmd160(3) -routines. - -The utility is linked statically, so that it can be used without any -shared libraries installed on the system. - -It is remarkably similar to the digest package, except that it -can recursively checksum directory trees. +This utility is a wrapper for the md5(3), sha1(3), rmd160(3), and +tiger hash routines. It is remarkably similar to the digest package, +except that it can recursively checksum directory trees. While a simple checksum on a tar file is usually satisfactory, once said archive has been extracted, it is virtually impossible to @@ -14,37 +9,8 @@ checksum. To be specific, changes in timestamps and ownership, and changes in file ordering within directories can affect the checksum of the archive, while not really impacting the actual code at all. -The algorithm used to checksum a directory in this implementation is -as follows: - - cd into directory - initialize MASTER_HASH - walk directory tree, sorting all entries - foreach entry - if it is a directory: - skip it if it is named "RCS", "CVS", or "SCCS" - initialize SLAVE_HASH - add the string "d " into SLAVE_HASH - add the pathname of the directory into SLAVE_HASH - finish SLAVE_HASH - fold the hexified SLAVE_HASH result into MASTER_HASH - if it is a file: - initialize SLAVE_HASH - add the string "f " into SLAVE_HASH - add the pathname of the file into SLAVE_HASH - finish SLAVE_HASH - fold the hexified SLAVE_HASH result into MASTER_HASH - initialize SLAVE_HASH - add the contents of the file into SLAVE_HASH - finish SLAVE_HASH - fold the hexified SLAVE_HASH result into MASTER_HASH - if it is a symbolic link - initialize SLAVE_HASH - add the string "l " into SLAVE_HASH - add the pathname of the link into SLAVE_HASH - finish SLAVE_HASH - fold the hexified SLAVE_HASH result into MASTER_HASH - initialize SLAVE_HASH - add the contents of the link into SLAVE_HASH - finish SLAVE_HASH - fold the hexified SLAVE_HASH result into MASTER_HASH +The algorithm used to checksum a directory in this implementation +is considers only the files' pathnames, the files' types (ie, +directory vs. file vs. symbolic link), and their contents (for +the latter two). It is described in greater detail in the man +page. diff --git a/pkgtools/rdigest/distinfo b/pkgtools/rdigest/distinfo index 645ac424078..bb440b58daf 100644 --- a/pkgtools/rdigest/distinfo +++ b/pkgtools/rdigest/distinfo @@ -1,5 +1,5 @@ -$NetBSD: distinfo,v 1.3 2005/03/28 20:52:55 agc Exp $ +$NetBSD: distinfo,v 1.4 2005/03/31 05:02:24 atatat Exp $ SHA1 (patch-aa) = 89dc6a984901ea749690a159a801e1a73d0b55a9 -SHA1 (patch-ab) = 71284db83e24537987887bc4fbffabdac35bdeb7 +SHA1 (patch-ab) = 576c6afbde00e64e1fb7c35c1c2f90b8037f2c9a SHA1 (patch-ac) = 787eb9b87e79b5110ae13594a4171bfe08ba2660 diff --git a/pkgtools/rdigest/patches/patch-ab b/pkgtools/rdigest/patches/patch-ab index 8ad1a749f0e..3098b1d69af 100644 --- a/pkgtools/rdigest/patches/patch-ab +++ b/pkgtools/rdigest/patches/patch-ab @@ -1,21 +1,20 @@ -$NetBSD: patch-ab,v 1.2 2005/03/28 20:52:55 agc Exp $ +$NetBSD: patch-ab,v 1.3 2005/03/31 05:02:24 atatat Exp $ ---- digest.1.orig 2005-03-28 21:41:50.000000000 +0100 -+++ digest.1 2005-03-28 21:45:50.000000000 +0100 -@@ -1,7 +1,7 @@ - .\" $NetBSD: patch-ab,v 1.2 2005/03/28 20:52:55 agc Exp $ +--- digest.1.orig 2005-03-30 23:40:39.000000000 -0500 ++++ digest.1 +@@ -2,5 +2,5 @@ .\" .\" -.\" Copyright (c) 2001 Alistair G. Crooks. All rights reserved. +.\" Copyright (c) 2001-2005 Alistair G. Crooks. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without - .\" modification, are permitted provided that the following conditions -@@ -32,20 +32,28 @@ +@@ -32,12 +32,13 @@ .\" .\" - .Dd March 23, 2005 +-.Dd March 23, 2005 -.Dt DIGEST 1 ++.Dd March 31, 2005 +.Dt RDIGEST 1 .Os .Sh NAME @@ -28,7 +27,7 @@ $NetBSD: patch-ab,v 1.2 2005/03/28 20:52:55 agc Exp $ +.Op Fl x Ar directory .Ar algorithm .Op file ... - .Sh DESCRIPTION +@@ -45,6 +46,13 @@ The .Nm -utility calculates message digests of files or, @@ -43,9 +42,7 @@ $NetBSD: patch-ab,v 1.2 2005/03/28 20:52:55 agc Exp $ +.Pp The list of possible algorithms is: .Bl -tag -width Ds - .It md5 -@@ -88,12 +96,32 @@ - algorithm implementations, which are located in the standard +@@ -89,4 +97,23 @@ algorithm implementations, which are loc C library, and was designed to be scalable as new message digest algorithms are developed. +The checksum for a directory is implemented as the hash over a list of @@ -53,32 +50,29 @@ $NetBSD: patch-ab,v 1.2 2005/03/28 20:52:55 agc Exp $ +.Bl -bullet +.It +For a file, the string -+.Li Dq f \& ++.Dq f \& +along with the path make up the data for one hash, and the contents of +the file is used for the second hash. +.It +For a symbolic link, the string -+.Li Dq l \& ++.Dq l \& +along with the path to the symbolic link make up the data for one +hash, and the target of the symbolic link is used for the second hash. +.It +For a directory, the string -+.Li Dq d \& ++.Dq d \& +along with the path make up the data for one hash. +There is no second hash for a directory. +.El .Pp The - .Nm - utility exits 0 on success, and \*[Gt]0 if an error occurs. +@@ -95,4 +122,5 @@ utility exits 0 on success, and \*[Gt]0 .Sh SEE ALSO .Xr cksum 1 , +.Xr digest 1 , .Xr md5 3 , .Xr rmd160 3 , - .Xr sha1 3 -@@ -101,9 +129,13 @@ - The +@@ -102,8 +130,12 @@ The .Nm utility first appeared in -.Nx 1.6 . |