| \section{\module{uu} --- |
| Encode and decode uuencode files} |
| |
| \declaremodule{standard}{uu} |
| \modulesynopsis{Encode and decode files in uuencode format.} |
| \moduleauthor{Lance Ellinghouse}{} |
| |
| |
| This module encodes and decodes files in uuencode format, allowing |
| arbitrary binary data to be transferred over ASCII-only connections. |
| Wherever a file argument is expected, the methods accept a file-like |
| object. For backwards compatibility, a string containing a pathname |
| is also accepted, and the corresponding file will be opened for |
| reading and writing; the pathname \code{'-'} is understood to mean the |
| standard input or output. However, this interface is deprecated; it's |
| better for the caller to open the file itself, and be sure that, when |
| required, the mode is \code{'rb'} or \code{'wb'} on Windows or DOS. |
| |
| This code was contributed by Lance Ellinghouse, and modified by Jack |
| Jansen. |
| \index{Jansen, Jack} |
| \index{Ellinghouse, Lance} |
| |
| The \module{uu} module defines the following functions: |
| |
| \begin{funcdesc}{encode}{in_file, out_file\optional{, name\optional{, mode}}} |
| Uuencode file \var{in_file} into file \var{out_file}. The uuencoded |
| file will have the header specifying \var{name} and \var{mode} as |
| the defaults for the results of decoding the file. The default |
| defaults are taken from \var{in_file}, or \code{'-'} and \code{0666} |
| respectively. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{decode}{in_file\optional{, out_file\optional{, mode}}} |
| This call decodes uuencoded file \var{in_file} placing the result on |
| file \var{out_file}. If \var{out_file} is a pathname, \var{mode} is |
| used to set the permission bits if the file must be |
| created. Defaults for \var{out_file} and \var{mode} are taken from |
| the uuencode header. However, if the file specified in the header |
| already exists, a \exception{uu.Error} is raised. |
| \end{funcdesc} |
| |
| \begin{excclassdesc}{Error}{} |
| Subclass of \exception{Exception}, this can be raised by |
| \function{uu.decode()} under various situations, such as described |
| above, but also including a badly formated header, or truncated |
| input file. |
| \end{excclassdesc} |
| |
| \begin{seealso} |
| \seemodule{binascii}{Support module containing \ASCII-to-binary |
| and binary-to-\ASCII{} conversions.} |
| \end{seealso} |