Commit dfc5300cd41e59321ab0f5c735560db2286c4953

Thomas de Grivel 2015-07-02T13:50:33

Make digest file use sha1 which yields 27 chars in base64uri.

diff --git a/digest.lisp b/digest.lisp
index 5907f27..3b0d12e 100644
--- a/digest.lisp
+++ b/digest.lisp
@@ -18,11 +18,19 @@
 
 (in-package :RoL-assets)
 
+(defvar *digest* :sha1)
+(defvar *digest-base* positional:+b64uri+)
+
+(defun digest-length ()
+  (values (ceiling (log (expt 2 (* 8 (ironclad:digest-length *digest*)))
+                        (positional:base *digest-base*)))))
+
 (defun digest-file (path)
   (positional:to-string
    (ironclad:octets-to-integer
-    (ironclad:digest-file :sha1 path))
-   positional:+b26+))
+    (ironclad:digest-file *digest* path))
+   *digest-base*
+   :padding (digest-length)))
 
 (defmethod digest-asset ((asset asset) (path pathname))
   (setf (asset-digest asset) (digest-file path))