From ddb83b1fb2d305e0c06fc067d82d6bab5458b0fd Mon Sep 17 00:00:00 2001 From: Matthias Benkard Date: Fri, 30 Oct 2009 20:52:07 +0100 Subject: Add third-party XML processing libraries. Ignore-this: 5ca28497555bf944858ca2f58bc8a62b darcs-hash:a0b0f9baa7c9b1259e755435db1fb17123630a6c --- third-party/s-base64/doc/index.html | 266 ++++++++++++++++++++++++++++++++++++ 1 file changed, 266 insertions(+) create mode 100644 third-party/s-base64/doc/index.html (limited to 'third-party/s-base64/doc/index.html') diff --git a/third-party/s-base64/doc/index.html b/third-party/s-base64/doc/index.html new file mode 100644 index 0000000..171ea6e --- /dev/null +++ b/third-party/s-base64/doc/index.html @@ -0,0 +1,266 @@ + + + +S-BASE64 + + + + + + + + +

Open Source Common Lisp Software

+

S-BASE64

+

A Common Lisp implementation of Base64 Encoding/Decoding

+

+S-BASE64 +is an open source Common Lisp implementation of Base64 Encoding and Decoding. +Base64 encoding is a technique to encode binary data in a portable, safe printable, 7-bit ASCII format. +For a general introduction, please consult the Wikipedia article on Base64. +This simple package is used as a building block in a number of other open source projects, +as can be seen from this description of some +other Open Source Common Lisp packages. +

+

Contents

+ +

Features

+

+S-BASE64 can: +

+ +

Status

+

+S-BASE64 is considered stable code. +

+

News

+

+October 2005 - Created as a seperate project. +

+

Platforms

+

+S-BASE64 is written in ANSI standard Common Lisp and should be portable across any CL implementation. +

+

Downloading

+

+You can download the latested released tarball of the S-BASE64 package from +http://homepage.mac.com/svc/s-base64/s-base64.tar.gz. +This archive is signed on release by Sven Van Caekenberghe, +whose public key is published at +http://homepage.mac.com/svc/sven-public-ascii.gpg, +the signature is in +http://homepage.mac.com/svc/s-base64/s-base64.tar.gz.asc. +

+

+Alternatively you can access the DARCS repository at +http://www.beta9.be/darcs/s-base64. +For a good description on how to use DARCS see +http://dirkgerrits.com/programming/erlisp/download/. +

+
+
$ darcs get http://www.beta9.be/darcs/s-base64
+Welcome to S-BASE64, a Common Lisp implementation of Base64 Encoding/Decoding
+**********************
+Copying patch 6 of 6... done!
+Applying patches to the "working" directory...
+............
+Finished getting.
+$ cd s-base64/
+$ darcs pull
+Pulling from "http://www.beta9.be/darcs/s-base64"...
+Welcome to S-BASE64, a Common Lisp implementation of Base64 Encoding/Decoding
+**********************
+No remote changes to pull in!
+
+
Example of basic darcs usage, get everything once and keep up to date by pulling in changes
+

Installation

+

+The S-BASE64 package is loaded using ASDF. +There is an excellent tutorial on ASDF to get you started. +Alternatively you can use ASDF-INSTALL. +There is an great tutorial on ASDF-INSTALL to get you on the way. +

+
+
$ cd apps/asdf/systems/
+$ ln -s ~/darcs/s-base64/s-base64.asd .
+$ cd ~
+$ /Applications/LispWorks/lispworks-tty 
+LispWorks(R): The Common Lisp Programming Environment
+Copyright (C) 1987-2005 LispWorks Ltd.  All rights reserved.
+Version 4.4.5
+Saved by sven as lispworks-tty, at 26 Oct 2005 11:53
+User sven on voyager.local
+; Loading text file /Applications/LispWorks/Library/lib/4-4-0-0/config/siteinit.lisp
+;  Loading text file /Applications/LispWorks/Library/lib/4-4-0-0/private-patches/load.lisp
+; Loading text file /Users/sven/.lispworks
+;  Loading text file /Users/sven/apps/asdf/init-asdf.lisp
+;   Loading fasl file /Users/sven/apps/asdf/asdf.nfasl
+;Pushed #P"/Users/sven/apps/asdf/systems/" onto ASDF central registry
+
+CL-USER 1 > (asdf:oos 'asdf:load-op :s-base64)
+; Loading /Applications/LispWorks/Library/lib/4-4-0-0/load-on-demand/ccl/xp-fancyformat.nfasl on demand...
+; loading system definition from
+; /Users/sven/apps/asdf/systems/s-base64.asd into
+; #<The ASDF787 package, 0/16 internal, 0/16 external>
+; Loading text file /Users/sven/darcs/s-base64/s-base64.asd
+; registering # as S-BASE64
+;;; Compiling file /Users/sven/darcs/s-base64/src/package.lisp ...
+...
+; Loading fasl file /Users/sven/darcs/s-base64/src/package.nfasl
+;;; Compiling file /Users/sven/darcs/s-base64/src/base64.lisp ...
+...
+; Loading fasl file /Users/sven/darcs/s-base64/src/base64.nfasl
+
+
Example of setting up and using ASDF to compile and load the package
+

Usage

+

+To encode you start with either a binary input stream or a byte array and write to a character output stream. +To decode you start from a character input stream and write to a binary output stream or return a byte array. +You can use the standard CL marcros WITH-OUTPUT-TO-STRING of WITH-INPUT-FROM-STRING to convert to and from a string. +The following listener transcript show how to compute the second example from RFC 3548, section 7: +

+
+
CL-USER 1 > (in-package :s-base64)
+#<The S-BASE64 package, 50/128 internal, 4/16 external>
+
+S-BASE64 2 > (setf bytes #(#x14 #xfb #x9c #x03 #xd9))
+#(20 251 156 3 217)
+
+S-BASE64 3 > (with-output-to-string (out) 
+               (encode-base64-bytes bytes out))
+"FPucA9k="
+
+S-BASE64 4 > (with-input-from-string (in *)
+               (decode-base64-bytes in))
+#(20 251 156 3 217)
+
+
Example Base64 Encoding and Decoding
+

API Reference

+

+There is automatically generated API Reference documentation available for the S-BASE64 package. +

+

Mailinglist

+

+The KPAX mailing list is used for this project. +

+

Changelog

+

+Release Notes: +

+ +

TODO

+

+There is a variant of Base64 encoding used for URL's and filenames that could be implemented. +

+

FAQ

+

+Nothing appropriate. +

+

Bugs

+

+Illegal input results in generic low-level CL conditions rather than a more meaningful high-level application specific condition. +

+

Authors

+

+S-BASE64 was written by Sven Van Caekenberghe. +

+

Maintainers

+

+S-BASE64 is being maintained by Sven Van Caekenberghe. +

+

License

+

+You are granted the rights to distribute and use this software +as governed by the terms of the Lisp Lesser General Public License +(http://opensource.franz.com/preamble.html), +also known as the LLGPL. +

+

History

+

+S-BASE64 was originally part of KPAX and became a seperate project in October 2005. +

+

References

+

+The following RFC's can be considered as definitions of Base64 Encoding: +

+

+ + + -- cgit v1.2.3