summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormillert <millert@openbsd.org>2004-05-02 17:55:09 +0000
committermillert <millert@openbsd.org>2004-05-02 17:55:09 +0000
commit8fee4f41afb4a7528ef2c3d8c905204ec36751ba (patch)
treed1a8eb57ae8a824e341aec1b8aeb01f6adcf01b6
parentcksum moved (diff)
downloadwireguard-openbsd-8fee4f41afb4a7528ef2c3d8c905204ec36751ba.tar.xz
wireguard-openbsd-8fee4f41afb4a7528ef2c3d8c905204ec36751ba.zip
cksum has been superceded by the md5 driver
-rw-r--r--usr.bin/Makefile4
-rw-r--r--usr.bin/cksum/Makefile8
-rw-r--r--usr.bin/cksum/cksum.1195
-rw-r--r--usr.bin/cksum/cksum.c136
-rw-r--r--usr.bin/cksum/crc.c146
-rw-r--r--usr.bin/cksum/extern.h44
-rw-r--r--usr.bin/cksum/print.c78
-rw-r--r--usr.bin/cksum/sum1.c75
-rw-r--r--usr.bin/cksum/sum2.c77
9 files changed, 2 insertions, 761 deletions
diff --git a/usr.bin/Makefile b/usr.bin/Makefile
index 6824c798d76..845a35ee6e4 100644
--- a/usr.bin/Makefile
+++ b/usr.bin/Makefile
@@ -1,10 +1,10 @@
-# $OpenBSD: Makefile,v 1.89 2004/01/13 03:43:40 mickey Exp $
+# $OpenBSD: Makefile,v 1.90 2004/05/02 17:55:09 millert Exp $
.include <bsd.own.mk>
SUBDIR= apply apropos arch asa asn1_compile at aucat audioctl awk banner \
basename bc bdes \
- biff cal calendar cap_mkdb cdio checknr chpass cksum cmp col \
+ biff cal calendar cap_mkdb cdio checknr chpass cmp col \
colcrt colrm column comm compile_et compress cpp crontab ctags cut \
dc deroff diff diff3 dirname du elf2olf encrypt env expand false file \
file2c find fgen finger fmt fold from fsplit fstat ftp gencat getconf \
diff --git a/usr.bin/cksum/Makefile b/usr.bin/cksum/Makefile
deleted file mode 100644
index 1671de525ac..00000000000
--- a/usr.bin/cksum/Makefile
+++ /dev/null
@@ -1,8 +0,0 @@
-# $OpenBSD: Makefile,v 1.3 1997/09/21 11:48:39 deraadt Exp $
-
-PROG= cksum
-SRCS= cksum.c crc.c print.c sum1.c sum2.c
-LINKS= ${BINDIR}/cksum ${BINDIR}/sum
-MLINKS= cksum.1 sum.1
-
-.include <bsd.prog.mk>
diff --git a/usr.bin/cksum/cksum.1 b/usr.bin/cksum/cksum.1
deleted file mode 100644
index 4ba290dd7de..00000000000
--- a/usr.bin/cksum/cksum.1
+++ /dev/null
@@ -1,195 +0,0 @@
-.\" $OpenBSD: cksum.1,v 1.16 2003/06/10 09:12:09 jmc Exp $
-.\" $NetBSD: cksum.1,v 1.8 1995/09/02 05:45:15 jtc Exp $
-.\"
-.\" Copyright (c) 1991, 1993
-.\" The Regents of the University of California. All rights reserved.
-.\"
-.\" This code is derived from software contributed to Berkeley by
-.\" the Institute of Electrical and Electronics Engineers, Inc.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\" 3. Neither the name of the University nor the names of its contributors
-.\" may be used to endorse or promote products derived from this software
-.\" without specific prior written permission.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.\" @(#)cksum.1 8.2 (Berkeley) 4/28/95
-.\"
-.Dd April 28, 1995
-.Dt CKSUM 1
-.Os
-.Sh NAME
-.Nm cksum ,
-.Nm sum
-.Nd display file checksums and block counts
-.Sh SYNOPSIS
-.Nm cksum
-.Op Fl o Ar \&1 No \&| Ar \&2
-.Op Ar file ...
-.Nm sum
-.Op Ar file ...
-.Sh DESCRIPTION
-The
-.Nm cksum
-utility writes to the standard output three whitespace separated
-fields for each input file.
-These fields are a checksum
-.Tn CRC ,
-the total number of octets in the file and the file name.
-If no file name is specified, the standard input is used and no file name
-is written.
-.Pp
-The
-.Nm sum
-utility is identical to the
-.Nm cksum
-utility, except that it defaults to using historic algorithm 1, as
-described below.
-It is provided for compatibility only.
-.Pp
-The options are as follows:
-.Bl -tag -width Ds
-.It Fl o Ar \&1 No \&| Ar \&2
-Use historic algorithms instead of the (superior) default one.
-.Pp
-Algorithm 1 is the algorithm used by historic
-.Bx
-systems as the
-.Nm sum
-algorithm and by historic
-.At V
-systems as the
-.Nm sum
-algorithm when using the
-.Fl r
-option.
-This is a 16-bit checksum, with a right rotation before each addition;
-overflow is discarded.
-.Pp
-Algorithm 2 is the algorithm used by historic
-.At V
-systems as the
-default
-.Nm sum
-algorithm.
-This is a 32-bit checksum, and is defined as follows:
-.Bd -unfilled -offset indent
-s = sum of all bytes;
-r = s % 2^16 + (s % 2^32) / 2^16;
-cksum = (r % 2^16) + r / 2^16;
-.Ed
-.Pp
-Both algorithm 1 and 2 write to the standard output the same fields as
-the default algorithm except that the size of the file in bytes is
-replaced with the size of the file in blocks.
-For historic reasons, the block size is 1024 for algorithm 1 and 512
-for algorithm 2.
-Partial blocks are rounded up.
-.El
-.Pp
-The default
-.Tn CRC
-used is based on the polynomial used for
-.Tn CRC
-error checking
-in the networking standard
-.St -iso8802-3
-The
-.Tn CRC
-checksum encoding is defined by the generating polynomial:
-.Pp
-.Bd -unfilled -offset indent
-G(x) = x^32 + x^26 + x^23 + x^22 + x^16 + x^12 +
- x^11 + x^10 + x^8 + x^7 + x^5 + x^4 + x^2 + x + 1
-.Ed
-.Pp
-Mathematically, the
-.Tn CRC
-value corresponding to a given file is defined by
-the following procedure:
-.Bd -filled -offset indent
-The
-.Ar n
-bits to be evaluated are considered to be the coefficients of a mod 2
-polynomial M(x) of degree
-.Ar n Ns \-1 .
-These
-.Ar n
-bits are the bits from the file, with the most significant bit being the most
-significant bit of the first octet of the file and the last bit being the least
-significant bit of the last octet, padded with zero bits (if necessary) to
-achieve an integral number of octets, followed by one or more octets
-representing the length of the file as a binary value, least significant octet
-first.
-The smallest number of octets capable of representing this integer are used.
-.Pp
-M(x) is multiplied by x^32 (i.e., shifted left 32 bits) and divided by
-G(x) using mod 2 division, producing a remainder R(x) of degree <= 31.
-.Pp
-The coefficients of R(x) are considered to be a 32-bit sequence.
-.Pp
-The bit sequence is complemented and the result is the CRC.
-.Ed
-.Pp
-The
-.Nm cksum
-and
-.Nm sum
-utilities exit 0 on success or >0 if an error occurred.
-.Sh SEE ALSO
-.Xr md5 1 ,
-.Xr rmd160 1 ,
-.Xr sha1 1
-.Pp
-The default calculation is identical to that given in pseudo-code
-in the following
-.Tn ACM
-article.
-.Rs
-.%T "Computation of Cyclic Redundancy Checks Via Table Lookup"
-.%A Dilip V. Sarwate
-.%J "Communications of the \\*(tNACM\\*(sP"
-.%D "August 1988"
-.Re
-.Sh STANDARDS
-The
-.Nm cksum
-utility is compliant with the
-.St -p1003.2-92
-specification.
-.Sh HISTORY
-A
-.Nm sum
-command appeared in
-.At v2 .
-The
-.Nm cksum
-utility appeared in
-.Bx 4.4 .
-.Sh WARNING
-Do not use
-.Nm cksum
-or
-.Nm sum
-to detect hostile binary modifications.
-An attacker can trivially produce backdoored daemons which have the same
-CRC as the standard versions.
-Use a cryptographic checksum (such as MD5) instead.
diff --git a/usr.bin/cksum/cksum.c b/usr.bin/cksum/cksum.c
deleted file mode 100644
index 3a9a558dfb1..00000000000
--- a/usr.bin/cksum/cksum.c
+++ /dev/null
@@ -1,136 +0,0 @@
-/* $OpenBSD: cksum.c,v 1.11 2003/06/10 22:20:45 deraadt Exp $ */
-/* $NetBSD: cksum.c,v 1.7 1995/09/02 05:45:18 jtc Exp $ */
-
-/*-
- * Copyright (c) 1991, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * James W. Williams of NASA Goddard Space Flight Center.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#ifndef lint
-static char copyright[] =
-"@(#) Copyright (c) 1991, 1993\n\
- The Regents of the University of California. All rights reserved.\n";
-#endif /* not lint */
-
-#ifndef lint
-#if 0
-static char sccsid[] = "@(#)cksum.c 8.2 (Berkeley) 4/28/95";
-#endif
-static char rcsid[] = "$OpenBSD: cksum.c,v 1.11 2003/06/10 22:20:45 deraadt Exp $";
-#endif /* not lint */
-
-#include <sys/types.h>
-
-#include <err.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-#include <locale.h>
-
-#include "extern.h"
-
-void usage(void);
-
-extern char *__progname;
-
-int
-main(int argc, char *argv[])
-{
- int ch, fd, rval;
- u_int32_t len, val;
- char *fn;
- int (*cfncn)(int, u_int32_t *, u_int32_t *);
- void (*pfncn)(char *, u_int32_t, u_int32_t);
-
- setlocale(LC_ALL, "");
-
- if (!strcmp(__progname, "sum")) {
- cfncn = csum1;
- pfncn = psum1;
- } else {
- cfncn = crc;
- pfncn = pcrc;
- }
-
- while ((ch = getopt(argc, argv, "o:")) != -1)
- switch(ch) {
- case 'o':
- if (!strcmp(optarg, "1")) {
- cfncn = csum1;
- pfncn = psum1;
- } else if (!strcmp(optarg, "2")) {
- cfncn = csum2;
- pfncn = psum2;
- } else {
- warnx("illegal argument to -o option");
- usage();
- }
- break;
- case '?':
- default:
- usage();
- }
- argc -= optind;
- argv += optind;
-
- fd = STDIN_FILENO;
- fn = NULL;
- rval = 0;
- do {
- if (*argv) {
- fn = *argv++;
- if ((fd = open(fn, O_RDONLY, 0)) < 0) {
- warn("%s", fn);
- rval = 1;
- continue;
- }
- }
- if (cfncn(fd, &val, &len)) {
- warn("%s", fn ? fn : "stdin");
- rval = 1;
- } else
- pfncn(fn, val, len);
- (void)close(fd);
- } while (*argv);
- exit(rval);
-}
-
-void
-usage(void)
-{
- if (!strcmp(__progname, "cksum"))
- (void)fprintf(stderr, "usage: cksum [-o 1 | 2] [file ...]\n");
- else
- (void)fprintf(stderr, "usage: %s [file ...]\n", __progname);
- exit(1);
-}
diff --git a/usr.bin/cksum/crc.c b/usr.bin/cksum/crc.c
deleted file mode 100644
index b2f65788403..00000000000
--- a/usr.bin/cksum/crc.c
+++ /dev/null
@@ -1,146 +0,0 @@
-/* $OpenBSD: crc.c,v 1.4 2003/06/03 02:56:06 millert Exp $ */
-/* $NetBSD: crc.c,v 1.7 1996/02/27 21:29:53 jtc Exp $ */
-
-/*-
- * Copyright (c) 1991, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * James W. Williams of NASA Goddard Space Flight Center.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#ifndef lint
-#if 0
-static char sccsid[] = "@(#)crc.c 8.1 (Berkeley) 6/17/93";
-static char rcsid[] = "$NetBSD: crc.c,v 1.7 1996/02/27 21:29:53 jtc Exp $";
-#else
-static char rcsid[] = "$OpenBSD: crc.c,v 1.4 2003/06/03 02:56:06 millert Exp $";
-#endif
-#endif /* not lint */
-
-#include <sys/types.h>
-#include <unistd.h>
-
-#include "extern.h"
-
-static const u_int32_t crctab[] = {
- 0x0,
- 0x04c11db7, 0x09823b6e, 0x0d4326d9, 0x130476dc, 0x17c56b6b,
- 0x1a864db2, 0x1e475005, 0x2608edb8, 0x22c9f00f, 0x2f8ad6d6,
- 0x2b4bcb61, 0x350c9b64, 0x31cd86d3, 0x3c8ea00a, 0x384fbdbd,
- 0x4c11db70, 0x48d0c6c7, 0x4593e01e, 0x4152fda9, 0x5f15adac,
- 0x5bd4b01b, 0x569796c2, 0x52568b75, 0x6a1936c8, 0x6ed82b7f,
- 0x639b0da6, 0x675a1011, 0x791d4014, 0x7ddc5da3, 0x709f7b7a,
- 0x745e66cd, 0x9823b6e0, 0x9ce2ab57, 0x91a18d8e, 0x95609039,
- 0x8b27c03c, 0x8fe6dd8b, 0x82a5fb52, 0x8664e6e5, 0xbe2b5b58,
- 0xbaea46ef, 0xb7a96036, 0xb3687d81, 0xad2f2d84, 0xa9ee3033,
- 0xa4ad16ea, 0xa06c0b5d, 0xd4326d90, 0xd0f37027, 0xddb056fe,
- 0xd9714b49, 0xc7361b4c, 0xc3f706fb, 0xceb42022, 0xca753d95,
- 0xf23a8028, 0xf6fb9d9f, 0xfbb8bb46, 0xff79a6f1, 0xe13ef6f4,
- 0xe5ffeb43, 0xe8bccd9a, 0xec7dd02d, 0x34867077, 0x30476dc0,
- 0x3d044b19, 0x39c556ae, 0x278206ab, 0x23431b1c, 0x2e003dc5,
- 0x2ac12072, 0x128e9dcf, 0x164f8078, 0x1b0ca6a1, 0x1fcdbb16,
- 0x018aeb13, 0x054bf6a4, 0x0808d07d, 0x0cc9cdca, 0x7897ab07,
- 0x7c56b6b0, 0x71159069, 0x75d48dde, 0x6b93dddb, 0x6f52c06c,
- 0x6211e6b5, 0x66d0fb02, 0x5e9f46bf, 0x5a5e5b08, 0x571d7dd1,
- 0x53dc6066, 0x4d9b3063, 0x495a2dd4, 0x44190b0d, 0x40d816ba,
- 0xaca5c697, 0xa864db20, 0xa527fdf9, 0xa1e6e04e, 0xbfa1b04b,
- 0xbb60adfc, 0xb6238b25, 0xb2e29692, 0x8aad2b2f, 0x8e6c3698,
- 0x832f1041, 0x87ee0df6, 0x99a95df3, 0x9d684044, 0x902b669d,
- 0x94ea7b2a, 0xe0b41de7, 0xe4750050, 0xe9362689, 0xedf73b3e,
- 0xf3b06b3b, 0xf771768c, 0xfa325055, 0xfef34de2, 0xc6bcf05f,
- 0xc27dede8, 0xcf3ecb31, 0xcbffd686, 0xd5b88683, 0xd1799b34,
- 0xdc3abded, 0xd8fba05a, 0x690ce0ee, 0x6dcdfd59, 0x608edb80,
- 0x644fc637, 0x7a089632, 0x7ec98b85, 0x738aad5c, 0x774bb0eb,
- 0x4f040d56, 0x4bc510e1, 0x46863638, 0x42472b8f, 0x5c007b8a,
- 0x58c1663d, 0x558240e4, 0x51435d53, 0x251d3b9e, 0x21dc2629,
- 0x2c9f00f0, 0x285e1d47, 0x36194d42, 0x32d850f5, 0x3f9b762c,
- 0x3b5a6b9b, 0x0315d626, 0x07d4cb91, 0x0a97ed48, 0x0e56f0ff,
- 0x1011a0fa, 0x14d0bd4d, 0x19939b94, 0x1d528623, 0xf12f560e,
- 0xf5ee4bb9, 0xf8ad6d60, 0xfc6c70d7, 0xe22b20d2, 0xe6ea3d65,
- 0xeba91bbc, 0xef68060b, 0xd727bbb6, 0xd3e6a601, 0xdea580d8,
- 0xda649d6f, 0xc423cd6a, 0xc0e2d0dd, 0xcda1f604, 0xc960ebb3,
- 0xbd3e8d7e, 0xb9ff90c9, 0xb4bcb610, 0xb07daba7, 0xae3afba2,
- 0xaafbe615, 0xa7b8c0cc, 0xa379dd7b, 0x9b3660c6, 0x9ff77d71,
- 0x92b45ba8, 0x9675461f, 0x8832161a, 0x8cf30bad, 0x81b02d74,
- 0x857130c3, 0x5d8a9099, 0x594b8d2e, 0x5408abf7, 0x50c9b640,
- 0x4e8ee645, 0x4a4ffbf2, 0x470cdd2b, 0x43cdc09c, 0x7b827d21,
- 0x7f436096, 0x7200464f, 0x76c15bf8, 0x68860bfd, 0x6c47164a,
- 0x61043093, 0x65c52d24, 0x119b4be9, 0x155a565e, 0x18197087,
- 0x1cd86d30, 0x029f3d35, 0x065e2082, 0x0b1d065b, 0x0fdc1bec,
- 0x3793a651, 0x3352bbe6, 0x3e119d3f, 0x3ad08088, 0x2497d08d,
- 0x2056cd3a, 0x2d15ebe3, 0x29d4f654, 0xc5a92679, 0xc1683bce,
- 0xcc2b1d17, 0xc8ea00a0, 0xd6ad50a5, 0xd26c4d12, 0xdf2f6bcb,
- 0xdbee767c, 0xe3a1cbc1, 0xe760d676, 0xea23f0af, 0xeee2ed18,
- 0xf0a5bd1d, 0xf464a0aa, 0xf9278673, 0xfde69bc4, 0x89b8fd09,
- 0x8d79e0be, 0x803ac667, 0x84fbdbd0, 0x9abc8bd5, 0x9e7d9662,
- 0x933eb0bb, 0x97ffad0c, 0xafb010b1, 0xab710d06, 0xa6322bdf,
- 0xa2f33668, 0xbcb4666d, 0xb8757bda, 0xb5365d03, 0xb1f740b4
-};
-
-/*
- * Compute a POSIX 1003.2 checksum. This routine has been broken out so that
- * other programs can use it. It takes a file descriptor to read from and
- * locations to store the crc and the number of bytes read. It returns 0 on
- * success and 1 on failure. Errno is set on failure.
- */
-u_int32_t crc_total = ~0; /* The crc over a number of files. */
-
-int
-crc(fd, cval, clen)
- int fd;
- u_int32_t *cval, *clen;
-{
- u_char *p;
- int nr;
- u_int32_t crc, len;
- u_char buf[16 * 1024];
-
-#define COMPUTE(var, ch) (var) = (var) << 8 ^ crctab[(var) >> 24 ^ (ch)]
-
- crc = len = 0;
- crc_total = ~crc_total;
- while ((nr = read(fd, buf, sizeof(buf))) > 0)
- for (len += nr, p = buf; nr--; ++p) {
- COMPUTE(crc, *p);
- COMPUTE(crc_total, *p);
- }
- if (nr < 0)
- return (1);
-
- *clen = len;
-
- /* Include the length of the file. */
- for (; len != 0; len >>= 8) {
- COMPUTE(crc, len & 0xff);
- COMPUTE(crc_total, len & 0xff);
- }
-
- *cval = ~crc;
- crc_total = ~crc_total;
- return (0);
-}
diff --git a/usr.bin/cksum/extern.h b/usr.bin/cksum/extern.h
deleted file mode 100644
index db28b8502b6..00000000000
--- a/usr.bin/cksum/extern.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/* $OpenBSD: extern.h,v 1.4 2003/06/03 02:56:06 millert Exp $ */
-/* $NetBSD: extern.h,v 1.5 1995/03/26 05:15:19 glass Exp $ */
-
-/*-
- * Copyright (c) 1991, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)extern.h 8.1 (Berkeley) 6/6/93
- */
-
-#include <sys/cdefs.h>
-
-__BEGIN_DECLS
-int crc(int, u_int32_t *, u_int32_t *);
-void pcrc(char *, u_int32_t, u_int32_t);
-void psum1(char *, u_int32_t, u_int32_t);
-void psum2(char *, u_int32_t, u_int32_t);
-int csum1(int, u_int32_t *, u_int32_t *);
-int csum2(int, u_int32_t *, u_int32_t *);
-__END_DECLS
diff --git a/usr.bin/cksum/print.c b/usr.bin/cksum/print.c
deleted file mode 100644
index f9611545c55..00000000000
--- a/usr.bin/cksum/print.c
+++ /dev/null
@@ -1,78 +0,0 @@
-/* $OpenBSD: print.c,v 1.3 2003/06/03 02:56:06 millert Exp $ */
-/* $NetBSD: print.c,v 1.5 1995/03/26 05:15:21 glass Exp $ */
-
-/*-
- * Copyright (c) 1991, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#ifndef lint
-#if 0
-static char sccsid[] = "@(#)print.c 8.1 (Berkeley) 6/6/93";
-#else
-static char rcsid[] = "$OpenBSD: print.c,v 1.3 2003/06/03 02:56:06 millert Exp $";
-#endif
-#endif /* not lint */
-
-#include <sys/types.h>
-#include <stdio.h>
-#include "extern.h"
-
-void
-pcrc(fn, val, len)
- char *fn;
- u_int32_t val, len;
-{
- (void)printf("%lu %lu", (unsigned long)val, (unsigned long)len);
- if (fn)
- (void)printf(" %s", fn);
- (void)printf("\n");
-}
-
-void
-psum1(fn, val, len)
- char *fn;
- u_int32_t val, len;
-{
- (void)printf("%lu %lu", (unsigned long)val,
- (unsigned long)(len + 1023) / 1024);
- if (fn)
- (void)printf(" %s", fn);
- (void)printf("\n");
-}
-
-void
-psum2(fn, val, len)
- char *fn;
- u_int32_t val, len;
-{
- (void)printf("%lu %lu", (unsigned long)val,
- (unsigned long)(len + 511) / 512);
- if (fn)
- (void)printf(" %s", fn);
- (void)printf("\n");
-}
diff --git a/usr.bin/cksum/sum1.c b/usr.bin/cksum/sum1.c
deleted file mode 100644
index e359552dff7..00000000000
--- a/usr.bin/cksum/sum1.c
+++ /dev/null
@@ -1,75 +0,0 @@
-/* $OpenBSD: sum1.c,v 1.4 2003/06/03 02:56:06 millert Exp $ */
-/* $NetBSD: sum1.c,v 1.5 1996/02/27 21:17:27 cgd Exp $ */
-
-/*-
- * Copyright (c) 1991, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#ifndef lint
-#if 0
-static char sccsid[] = "@(#)sum1.c 8.1 (Berkeley) 6/6/93";
-static char rcsid[] = "$NetBSD: sum1.c,v 1.5 1996/02/27 21:17:27 cgd Exp $";
-#else
-static char rcsid[] = "$OpenBSD: sum1.c,v 1.4 2003/06/03 02:56:06 millert Exp $";
-#endif
-#endif /* not lint */
-
-#include <sys/types.h>
-#include <unistd.h>
-
-#include "extern.h"
-
-int
-csum1(fd, cval, clen)
- int fd;
- u_int32_t *cval, *clen;
-{
- u_int32_t total;
- int nr;
- u_int crc;
- u_char *p;
- u_char buf[8192];
-
- /*
- * 16-bit checksum, rotating right before each addition;
- * overflow is discarded.
- */
- crc = total = 0;
- while ((nr = read(fd, buf, sizeof(buf))) > 0)
- for (total += nr, p = buf; nr--; ++p) {
- if (crc & 1)
- crc |= 0x10000;
- crc = ((crc >> 1) + *p) & 0xffff;
- }
- if (nr < 0)
- return(1);
-
- *cval = crc;
- *clen = total;
- return(0);
-}
diff --git a/usr.bin/cksum/sum2.c b/usr.bin/cksum/sum2.c
deleted file mode 100644
index 3f8b60ae963..00000000000
--- a/usr.bin/cksum/sum2.c
+++ /dev/null
@@ -1,77 +0,0 @@
-/* $OpenBSD: sum2.c,v 1.4 2003/06/03 02:56:06 millert Exp $ */
-/* $NetBSD: sum2.c,v 1.5 1996/02/27 21:17:28 cgd Exp $ */
-
-/*-
- * Copyright (c) 1991, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#ifndef lint
-#if 0
-static char sccsid[] = "@(#)sum2.c 8.1 (Berkeley) 6/6/93";
-static char rcsid[] = "$NetBSD: sum2.c,v 1.5 1996/02/27 21:17:28 cgd Exp $";
-#else
-static char rcsid[] = "$OpenBSD: sum2.c,v 1.4 2003/06/03 02:56:06 millert Exp $";
-#endif
-#endif /* not lint */
-
-#include <sys/types.h>
-#include <unistd.h>
-
-#include "extern.h"
-
-int
-csum2(fd, cval, clen)
- int fd;
- u_int32_t *cval, *clen;
-{
- u_int32_t crc, total;
- int nr;
- u_char *p;
- u_char buf[8192];
-
- /*
- * Draft 8 POSIX 1003.2:
- *
- * s = sum of all bytes
- * r = s % 2^16 + (s % 2^32) / 2^16
- * crc = (r % 2^16) + r / 2^16
- */
- crc = total = 0;
- while ((nr = read(fd, buf, sizeof(buf))) > 0)
- for (total += nr, p = buf; nr--; ++p)
- crc += *p;
- if (nr < 0)
- return(1);
-
- crc = (crc & 0xffff) + (crc >> 16);
- crc = (crc & 0xffff) + (crc >> 16);
-
- *cval = crc;
- *clen = total;
- return(0);
-}