From 9f89319dbd42796ebc955f768ba7de9b52c77531 Mon Sep 17 00:00:00 2001 From: Curtis McEnroe Date: Fri, 9 Nov 2018 00:31:44 -0500 Subject: Add crc32_combine.3 --- crc32.3 | 32 +++++++++++++++++++++++++++++++- crc32_combine.3 | 1 + 2 files changed, 32 insertions(+), 1 deletion(-) create mode 120000 crc32_combine.3 diff --git a/crc32.3 b/crc32.3 index 66191fd..84c1d65 100644 --- a/crc32.3 +++ b/crc32.3 @@ -4,7 +4,8 @@ . .Sh NAME .Nm crc32 , -.Nm crc32_z +.Nm crc32_z , +.Nm crc32_combine .Nd update CRC-32 checksum . .Sh LIBRARY @@ -16,6 +17,8 @@ .Fn crc32 "uLong crc" "const Bytef *buf" "uInt len" .Ft uLong .Fn crc32_z "uLong crc" "const Bytef *buf" "z_size_t len" +.Ft uLong +.Fn crc32_combine "uLong crc1" "uLong crc2" "z_off_t len2" . .Sh DESCRIPTION Update a running CRC-32 with the bytes @@ -41,6 +44,33 @@ but with a .Vt size_t length. . +.Pp +.Fn crc32_combine +combines two CRC-32 check values into one. +For two sequences of bytes, +.Va seq1 +and +.Va seq2 +with lengths +.Va len1 +and +.Va len2 , +CRC-32 check values were calculated for each, +.Va crc1 +and +.Va crc2 . +.Fn crc32_combine +returns the CRC-32 check value of +.Va seq1 +and +.Va seq2 +concatenated, +requiring only +.Fa crc1 , +.Fa crc2 , +and +.Fa len2 . +. .Sh EXAMPLES .Bd -literal -offset indent uLong crc = crc32(0L, Z_NULL, 0); diff --git a/crc32_combine.3 b/crc32_combine.3 new file mode 120000 index 0000000..cd5bed9 --- /dev/null +++ b/crc32_combine.3 @@ -0,0 +1 @@ +crc32.3 \ No newline at end of file -- cgit 1.4.1