Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master

Jun 11, 2009

  1. Document the -t option

    authored June 10, 2009
  2. Track the characters written in the io structure; have

    traceonly dump out the # of lines & characters that would
    have been written for each attachment.
    authored June 10, 2009

Jun 10, 2009

  1. Version 1.2.3: add the -t option to unravel, which simply dumps a

    listing of content-types (and their destination filename, if any)
    authored June 10, 2009

May 25, 2008

  1. Version 1.2.2: tweaks to make high-strung pseudo-C compilers less

    fussy + tweaks to make high-strung Macos development environments
    less fussy.
    authored May 25, 2008

May 24, 2008

  1. Merge orc@pell:Src/mimecode

    authored May 24, 2008
  2. Update AC_SUB so it works with Xcode on macos 10.5

    authored May 23, 2008

Oct 02, 2007

  1. Update the manpage for ravel(1)

    sort the x_option list for ravel so that the options are
    listed in alphabetic order.
    authored October 02, 2007
  2. Add a README (briefly describe the product) and a INSTALL (briefly de…

    …scribe
    
    how to install the product) document.
    authored October 02, 2007
  3. Up to 1.2.1 (lots of little things)

    configure.sh: 1) Move the two freebsd-specific checks next to each other
                  2) Check for the setbuffer() function
    openfile.c:   1) Implement an overwrite flag and strip out the old "change
                     slashes into _'s" code.
    ravel.1:      1) Document -c (write to current directory) and -f (overwrite
                     files)
    ravel.c:      1) Wrap the showopt() call in die() with setbuffer()'s to
                     buffer the output of the (not direly important) listing
    	         of the available options.
    unravel.c:    1) Wrap the shopopt() call in die() with setbuffer()'s to
    	         buffer the output of the (not direly important) listing
    	         of the available options.
    	      2) Add a die() function.
    	      3) support -c and -f options.
    uudecode.1    1) Document -c (write to current directory) and -f (overwrite
                     files.)
    authored October 02, 2007
  4. Add the manpage for uuencode.

    Make the installation of uuencode/uudecode optional;  they won't install
    unless --enable-uuencode is passed to configure.sh
    Prune output filenames in unravel;  basename() them all so they won't
    be plopped down into random directories.
    Check for basename() [and, in unravel, compile our own if it doesn't exist]
    and the headerfile libgen.h [freeBSD; holds the prototype for basename()]
    authored October 01, 2007
  5. Add support for uuencode (both traditional and base64 versions) by

    adding the 4.4bsd uuencoder core to uudecode, then adding additional
    logic to ravel to handle the case where it's named ``uuencode''.
    Also add -V to the uudecode argument list
    authored October 01, 2007
  6. Add a linecount field to the 'context' structure.

    Initialize the context's when we declare them.
    Tweak writechar() so that it bumps the linecount whenever
    it writes a \n.  Drop the private about structure
    since linecounts are now carried in the context
    structure.
    authored October 01, 2007

Oct 01, 2007

  1. Merge orc@gehenna:Src/mimecode

    authored October 01, 2007
  2. Up to version 1.2 (ish)

       1) Fix a bug in base64.c which makes the code overrun lines
          and attempt to decode the newlines at the end of the line.
       2) Support posix-style base64-encoded ``uuencode'' files.
       3) Add the -6 option to ravel, which tells it to encode all
          attachments in base64.
    authored October 01, 2007
  3. I managed to leave a stray copyright line in the middle of the standard

    Berkeley copyright header?  Huh?
    authored October 01, 2007

Sep 30, 2007

  1. Merge orc@gehenna:Src/mimecode

    authored September 29, 2007
  2. Up to V1.1.1 (sooner or later)

    authored September 29, 2007
  3. Tweak the /share vs. non-share directory setting: If $AC_PREFIX/share…

    …/man
    
    exists, we need to put the manpages there.  So far that's standard.  But
    some environments have /usr/share/man, but don't have /usr/local/share/man,
    so the configurator needs to check at --help and at wrapup to see if there's
    a share where we want it to be.
    
    This is kind of gross, and I may need to back the code out.  Later.
    authored September 29, 2007

Sep 29, 2007

  1. Have configure.inc look to see if the offending machine has a $prefix…

    …/share/man
    
    path, and, if so, default __mandir to it.
    authored September 29, 2007
  2. Convert the manual pages to the -mandoc format. Copy in the BSD

    uuencode(5) manpage to document the format.
    authored September 29, 2007
  3. Rework the program to keep the version# in version.c.

    authored September 29, 2007
  4. Use DESTDIR for installing, /not/ TARGET

    authored September 29, 2007
  5. Add a uuencoded test file (to test uudecode and unravel < uue file)

    Fix a typo in the mime header handling that compared a _pointer_ to
    '"' instead of *pointer.
    authored September 29, 2007
  6. Use INSTALL_PROGRAM instead of hand-arguments for installing

    programs.
    Modify install_manpages to not assume that there will be a
    'man' user.
    authored September 29, 2007
  7. Fumbled the options record for -p

    authored September 29, 2007
  8. Change the copyright notice to include this year.

    Tweak unravel to better process uuencoded files when they're
    passed into unravel.
    Clean up the return codes from uuencoded->decode() so that it
    returns -1 on error, 0 on successful decoding.
    authored September 29, 2007
  9. Delete the old base64 decoder, copy the decoder in from the postoffice

    b64 code.
    Pass a default filename into openfile(), so that when -a is set openfile
    will set a default filename and extension.   The default filename is
    <prefix>.%d (starting at 1, counting up), and the collision filename
    for named sections is changed to <filename>(copy %d)
    There are also some tiny documentation changes
    authored September 29, 2007
  10. Tweak the debug code in base64.c so that it works (the template

    `context' structure is now defined in mime_encoding.h, so I don't
    need to carry a special one around.)
    Tweak uudecode.c so that it doesn't attempt to start decoding the
    length byte of every line.
    Give uudecode its own options (-o file, -v, -7) instead of just
    using the unravel options
    Put in an error() function and use it instead of hand-written
    error output stanzas
    authored September 28, 2007
  11. Tweak uudecode handling; have the uud() script pull the BEGIN

    line before doing the decoding.
    authored September 28, 2007
  12. Let a C99ism into the code (mingling declarations and code)

    authored September 28, 2007
  13. Start reworking the COMPLETELY BROKEN earlier version of the code into

    one that actually has a fighting chance of actually working.
    authored September 28, 2007

Jun 27, 2007

  1. *------------------*

    * Version      1.0 *
    *------------------*
     --------------------------------------------
     04/01/10 orc@downbelow.pell.portland.or.us 1.6
     configure.sh:
       Strip out some debugging
     configure.inc:
       Roll in the fixed configure.inc that includes at least
       some of the changes from the xrpm configure.inc
     Makefile.in:
       Also set CC
     test3.mime, test4.mime:
       Change mode to -rw-rw-r--
     --------------------------------------------
    authored June 26, 2007
  2. *------------------*

    * Version    1.0.1 *
    *------------------*
     --------------------------------------------
     04/01/09 orc@downbelow.pell.portland.or.us 1.4
     test.mime:
       Rename: test.mime -> tests/test.mime
     test4.mime:
       Rename: test4.mime -> tests/test4.mime
     test3.mime:
       Rename: test3.mime -> tests/test3.mime
     test2.mime:
       Rename: test2.mime -> tests/test2.mime
     Makefile.in:
       Add ``distclean'' target
     unravel.c, ravel.c:
       Don't use %M% to get the program name
     configure.sh:
       new file
     unravel.c, ravel.c:
       Give the actual VERSION number
     Makefile.in:
       Pass the version number in Cflags
     --------------------------------------------
     04/01/09 orc@downbelow.pell.portland.or.us 1.5
     ravel.c:
       Die if no arguments are provided (pointless to create a
       zero-elemented mime document.)  Yes, it's not The Unix
       Way, but I've found that when I type ravel without arguments
       it's so I can get a diagnostic message.
     --------------------------------------------
    authored June 26, 2007
  3. *------------------*

    * Version      1.0 *
    *------------------*
     --------------------------------------------
     04/01/09 orc@downbelow.pell.portland.or.us 1.2
     Initial copy
     --------------------------------------------
     04/01/09 orc@downbelow.pell.portland.or.us 1.3
     config:
       Add the autocheckout flags
     Makefile.in:
       Further redo Makefile.in so that it looks more like
       my other configure.sh'ed Makefiles
     install_manpages, VERSION, test4.mime:
       new file
     ravel.c:
       Redirect the url to where it's going to live in the future
     Many files:
       Turn on SCCS flag
       Turn on YEAR4 flag
       Turn on RCS flag
     uudecode.c, unravel.c, qp.c, clear.c, base64.c:
       Check for freebsd so that gcc won't whine about backwards
       compatability
     ravel.c:
       Check for freebsd so that gcc won't whine about backwards
       compatability.
       Don't append domainname if uname() doesn't supply it
     openfile.c:
       Add config.h
     Makefile.in:
       Rework to use configure.sh
     configure.inc:
       Roll in the latest version of configure.inc (via xrpm)
     Makefile.in:
       Rename: Makefile -> Makefile.in
     --------------------------------------------
    authored June 26, 2007
Something went wrong with that request. Please try again.