Set mangle to create a base64-encoded hmac-md5
[pwdhash.git] / b64-cl.c
index 4733f09..c1330f0 100644 (file)
--- a/b64-cl.c
+++ b/b64-cl.c
@@ -6,9 +6,11 @@ u32 b64_encode (u8 *base64_hash, const u32 len, const u8 *base64_plain)
 {
         u8 *out_ptr = (u8 *) base64_hash;
         u8 *in_ptr  = (u8 *) base64_plain;
+        u32 out_len;
 
         u32 i;
 
+               out_len = 0;
         for (i = 0; i < (len - 2); i += 3)
         {
                 char out_val0 = b64_table [                            ((in_ptr[0] >> 2) & 0x3f)];
@@ -23,6 +25,7 @@ u32 b64_encode (u8 *base64_hash, const u32 len, const u8 *base64_plain)
 
                 in_ptr  += 3;
                 out_ptr += 4;
+                out_len += 4;
         }
                if (i == (len - 1)) {
                 char out_val0 = b64_table [                            ((in_ptr[0] >> 2) & 0x3f)];
@@ -35,6 +38,7 @@ u32 b64_encode (u8 *base64_hash, const u32 len, const u8 *base64_plain)
                        
                 in_ptr  += 3;
                 out_ptr += 4;
+                out_len += 4;
                }
                if (i == (len - 2)) {
                 char out_val0 = b64_table [                            ((in_ptr[0] >> 2) & 0x3f)];
@@ -48,8 +52,9 @@ u32 b64_encode (u8 *base64_hash, const u32 len, const u8 *base64_plain)
 
                 in_ptr  += 3;
                 out_ptr += 4;
+                out_len += 4;
                }
 
-               return (out_ptr - base64_hash + 0);
+               return out_len;
 }