sum(3)



sum(3tcl)                  Cyclic Redundancy Checks                  sum(3tcl)

______________________________________________________________________________

NAME
       sum - Calculate a sum(1) compatible checksum

SYNOPSIS
       package require Tcl  8.2

       package require sum  ?1.1.2?

       ::crc::sum  ?-bsd  | -sysv? ?-format fmt? ?-chunksize size? [ -filename
       file | -channel chan | string ]

______________________________________________________________________________

DESCRIPTION
       This package provides a Tcl-only implementation of the  sum(1)  command
       which  calculates a 16 bit checksum value from the input data.  The BSD
       sum algorithm is used by default but the SysV algorithm is also  avail-
       able.

COMMANDS
       ::crc::sum  ?-bsd  | -sysv? ?-format fmt? ?-chunksize size? [ -filename
       file | -channel chan | string ]
              The command takes string data or a file name or  a  channel  and
              returns  a checksum value calculated using the sum(1) algorithm.
              The result is formatted using the  format(3tcl)  specifier  pro-
              vided or as an unsigned integer (%u) by default.

OPTIONS
       -sysv  The  SysV  algorithm is fairly naive. The byte values are summed
              and any overflow is discarded. The lowest 16 bits  are  returned
              as  the checksum.  Input with the same content but different or-
              dering will give the same result.

       -bsd   This algorithm is similar to the SysV version but includes a bit
              rotation  step  which  provides a dependency on the order of the
              data values.

       -filename name
              Return a checksum for the file contents instead of for parameter
              data.

       -channel chan
              Return a checksum for the contents of the specified channel. The
              channel must be open for reading and should  be  configured  for
              binary translation. The channel will no be closed on completion.

       -chunksize size
              Set  the  block size used when reading data from either files or
              channels. This value defaults to 4096.

       -format string
              Return the checksum using an alternative format template.

EXAMPLES
              % crc::sum "Hello, World!"
              37287

              % crc::sum -format 0x%X "Hello, World!"
              0x91A7

              % crc::sum -file sum.tcl
              13392

AUTHORS
       Pat Thoyts

BUGS, IDEAS, FEEDBACK
       This document, and the package it describes, will  undoubtedly  contain
       bugs and other problems.  Please report such in the category crc of the
       Tcllib Trackers  [http://core.tcl.tk/tcllib/reportlist].   Please  also
       report  any  ideas  for  enhancements  you  may have for either package
       and/or documentation.

       When proposing code changes, please provide unified diffs, i.e the out-
       put of diff -u.

       Note  further  that  attachments  are  strongly  preferred over inlined
       patches. Attachments can be made by going  to  the  Edit  form  of  the
       ticket  immediately  after  its  creation, and then using the left-most
       button in the secondary navigation bar.

SEE ALSO
       cksum(3tcl), crc32(3tcl), sum(1)

KEYWORDS
       checksum, cksum, crc, crc32, cyclic redundancy check,  data  integrity,
       security, sum

CATEGORY
       Hashes, checksums, and encryption

COPYRIGHT
       Copyright (c) 2002, Pat Thoyts <patthoyts@users.sourceforge.net>

tcllib                               1.1.2                           sum(3tcl)

Man(1) output converted with man2html
list of all man pages