about summary refs log tree commit diff
path: root/third_party
diff options
context:
space:
mode:
authorsterni <sternenseemann@systemli.org>2023-05-16T14·11+0200
committerclbot <clbot@tvl.fyi>2023-05-18T16·16+0000
commit734cec2e3bb24799869462e57853f99b8d89b294 (patch)
tree6767e81f2ab9c03850e2f2ab278681260f435ad2 /third_party
parent3d2e55ad535371d1152a221dc31a8773b3a09ddf (diff)
refactor(3p/lisp/mime4cl): use qbase64 for decoding FILE-PORTIONs r/6153
Porting over the rest of the decoding (RFC2047) and especially encoding
over to qbase64 is still pending, as it is a little trickier.

Change-Id: Id4740eb074a387aeea2cb94b781e204248530799
Reviewed-on: https://cl.tvl.fyi/c/depot/+/8582
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
Diffstat (limited to 'third_party')
-rw-r--r--third_party/lisp/mime4cl/default.nix1
-rw-r--r--third_party/lisp/mime4cl/streams.lisp3
2 files changed, 2 insertions, 2 deletions
diff --git a/third_party/lisp/mime4cl/default.nix b/third_party/lisp/mime4cl/default.nix
index 06a20f77cd24..99b23c91aa69 100644
--- a/third_party/lisp/mime4cl/default.nix
+++ b/third_party/lisp/mime4cl/default.nix
@@ -9,6 +9,7 @@ depot.nix.buildLisp.library {
     depot.third_party.lisp.flexi-streams
     depot.third_party.lisp.npg
     depot.third_party.lisp.trivial-gray-streams
+    depot.third_party.lisp.qbase64
   ];
 
   srcs = [
diff --git a/third_party/lisp/mime4cl/streams.lisp b/third_party/lisp/mime4cl/streams.lisp
index b1c78d6d08b6..d49e73824000 100644
--- a/third_party/lisp/mime4cl/streams.lisp
+++ b/third_party/lisp/mime4cl/streams.lisp
@@ -45,7 +45,6 @@
   '(unsigned-byte 8))
 
 (defclass quoted-printable-decoder-stream (coder-input-stream-mixin quoted-printable-decoder) ())
-(defclass base64-decoder-stream (coder-input-stream-mixin base64-decoder) ())
 (defclass 8bit-decoder-stream (coder-input-stream-mixin 8bit-decoder) ())
 
 (defclass quoted-printable-encoder-stream (coder-output-stream-mixin quoted-printable-encoder) ())
@@ -262,7 +261,7 @@ be modified to match the :POSITION argument."
           (make-instance
            (ccase encoding
              (:quoted-printable 'quoted-printable-decoder-stream)
-             (:base64 'base64-decoder-stream))
+             (:base64 'qbase64:decode-stream))
            :underlying-stream portion-stream)
           portion-stream))))