summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pkgtools/rdigest/DESCR50
-rw-r--r--pkgtools/rdigest/distinfo4
-rw-r--r--pkgtools/rdigest/patches/patch-ab34
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 .