Fix base64_decode() to return and check length correctly
diff --git a/library/base64.c b/library/base64.c
index 5b1418b..39a8323 100644
--- a/library/base64.c
+++ b/library/base64.c
@@ -172,6 +172,7 @@
         return( 0 );
 
     n = ( ( n * 6 ) + 7 ) >> 3;
+    n -= j;
 
     if( dst == NULL || *dlen < n )
     {