about summary refs log tree commit diff homepage
path: root/crc32.3
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2018-11-09 00:31:44 -0500
committerJune McEnroe <june@causal.agency>2018-11-09 00:31:44 -0500
commit9f89319dbd42796ebc955f768ba7de9b52c77531 (patch)
tree66d9e88452ddf92fd211e93feece68544fcbfff1 /crc32.3
parentAdd adler32.3 (diff)
downloadzlib-man-pages-9f89319dbd42796ebc955f768ba7de9b52c77531.tar.gz
zlib-man-pages-9f89319dbd42796ebc955f768ba7de9b52c77531.zip
Add crc32_combine.3
Diffstat (limited to 'crc32.3')
-rw-r--r--crc32.332
1 files changed, 31 insertions, 1 deletions
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);