diff options
Diffstat (limited to '')
-rw-r--r-- | adler32.3 | 42 | ||||
l--------- | adler32_combine.3 | 1 |
2 files changed, 42 insertions, 1 deletions
diff --git a/adler32.3 b/adler32.3 index 18371a3..b455474 100644 --- a/adler32.3 +++ b/adler32.3 @@ -4,7 +4,8 @@ . .Sh NAME .Nm adler32 , -.Nm adler32_z +.Nm adler32_z , +.Nm adler32_combine .Nd update Adler-32 checksum . .Sh LIBRARY @@ -16,6 +17,8 @@ .Fn adler32 "uLong adler" "const Bytef *buf" "uInt len" .Ft uLong .Fn adler32_z "uLong adler" "const Bytef *buf" "z_size_t len" +.Ft uLong +.Fn adler32_combine "uLong adler1" "uLong adler2" "z_off_t len2" . .Sh DESCRIPTION Update a running Adler-32 checksum with the bytes @@ -40,6 +43,43 @@ but with a .Vt size_t length. . +.Pp +.Fn adler32_combine +combines two Adler-32 checksums into one. +For two sequences of bytes, +.Va seq1 +and +.Va seq2 +with lengths +.Va len1 +and +.Va len2 , +Adler-32 checksums were calculated for each, +.Va adler1 +and +.Va adler2 . +.Fn adler32_combine +returns the Adler-32 checksum of +.Va seq1 +and +.Va seq2 +concatenated, +requiring only +.Fa adler1 , +.Fa adler2 , +and +.Fa len2 . +Note that the +.Vt z_off_t +type +(like +.Vt off_t ) +is a signed integer. +If +.Fa len2 +is negative, +the result has no meaning or utility. +. .Sh EXAMPLES .Bd -literal -offset indent uLong adler = adler32(0L, Z_NULL, 0); diff --git a/adler32_combine.3 b/adler32_combine.3 new file mode 120000 index 0000000..630dd96 --- /dev/null +++ b/adler32_combine.3 @@ -0,0 +1 @@ +adler32.3 \ No newline at end of file |