trusty (3) yencode.3tcl.gz

Provided by: tcllib_1.15-dfsg-2_all bug

NAME

       yencode - Y-encode/decode binary data

SYNOPSIS

       package require Tcl  8.2

       package require yencode  ?1.1.2?

       ::yencode::encode string

       ::yencode::decode string

       ::yencode::yencode ?-name string? ?-line integer? ?-crc32 boolean? (-file filename | ?--? string)

       ::yencode::ydecode (-file filename | ?--? string)

_________________________________________________________________

DESCRIPTION

       This  package provides a Tcl-only implementation of the yEnc file encoding. This is a recently introduced
       method of encoding binary files for transmission through Usenet. This encoding packs binary data  into  a
       format  that  requires  an 8-bit clean transmission layer but that escapes characters special to the NNTP
       posting protocols. See http://www.yenc.org/ for details concerning the algorithm.

       ::yencode::encode string
              returns the yEnc encoded data.

       ::yencode::decode string
              Decodes the given yEnc encoded data.

       ::yencode::yencode ?-name string? ?-line integer? ?-crc32 boolean? (-file filename | ?--? string)
              Encode a file or block of data.

       ::yencode::ydecode (-file filename | ?--? string)
              Decode a file or block of data. A file may contain more than one embedded file so the result is  a
              list where each element is a three element list of filename, file size and data.

OPTIONS

       -filename name
              Cause  the yencode or ydecode commands to read their data from the named file rather that taking a
              string parameter.

       -name string
              The encoded data header line contains the suggested file name to be used when unpacking the  data.
              Use this option to change this from the default of "data.dat".

       -line integer
              The  yencoded data header line contains records the line length used during the encoding. Use this
              option to select a line length other that the default of  128.  Note  that  NNTP  imposes  a  1000
              character  line  length limit and some gateways may have trouble with more than 255 characters per
              line.

       -crc32 boolean
              The yEnc specification recommends the inclusion of a cyclic redundancy check value in the  footer.
              Use this option to change the default from true to false.

              % set d [yencode::yencode -file testfile.txt]
              =ybegin line=128 size=584 name=testfile.txt
              -o- data not shown -o-
              =yend size=584 crc32=ded29f4f

REFERENCES

       [1]    http://www.yenc.org/yenc-draft.1.3.txt

BUGS, IDEAS, FEEDBACK

       This  document,  and  the package it describes, will undoubtedly contain bugs and other problems.  Please
       report     such     in     the     category     base64      of      the      Tcllib      SF      Trackers
       [http://sourceforge.net/tracker/?group_id=12883].   Please also report any ideas for enhancements you may
       have for either package and/or documentation.

KEYWORDS

       encoding, yEnc, ydecode, yencode

CATEGORY

       Text processing

       Copyright (c) 2002, Pat Thoyts