about summary refs log tree commit diff
path: root/rfc2047.c
diff options
context:
space:
mode:
authorChristian Neukirchen <chneukirchen@gmail.com>2016-07-15 16:39:11 +0200
committerChristian Neukirchen <chneukirchen@gmail.com>2016-07-15 16:39:23 +0200
commit8629e12ee6f31750f91c78cbdf4e9c45908ae4c3 (patch)
treeb1dd844212785c5d2c7d8afe081befd528f168a2 /rfc2047.c
parent010458d9712fd2941f064fe957fbc592eaa78ab1 (diff)
downloadmblaze-8629e12ee6f31750f91c78cbdf4e9c45908ae4c3.tar.gz
mblaze-8629e12ee6f31750f91c78cbdf4e9c45908ae4c3.tar.xz
mblaze-8629e12ee6f31750f91c78cbdf4e9c45908ae4c3.zip
rfc2047: revert in blaze822_decode_b64
Diffstat (limited to 'rfc2047.c')
-rw-r--r--rfc2047.c17
1 files changed, 2 insertions, 15 deletions
diff --git a/rfc2047.c b/rfc2047.c
index 39925cc..f942a46 100644
--- a/rfc2047.c
+++ b/rfc2047.c
@@ -90,31 +90,18 @@ blaze822_decode_b64(char *s, char *e, char **deco, size_t *decleno)
 		if ((c0 | c1 | c2 | c3) > 127)
 			continue;
 
-// V  21098765432109876543210
-// [[[c0]]]543210
-//       [[[c1]]]543210
-//             [[[c2]]]543210
-//                   [[[c3]]]
-//   [[[d2]]][[[d1]]][[[d0]]]
-
-#ifndef SLICE
 		v |= b64[c0]; t |= b64[c0]; v <<= 6;
 		v |= b64[c1]; t |= b64[c1]; v <<= 6;
 		v |= b64[c2]; t |= b64[c2]; v <<= 6;
 		v |= b64[c3]; t |= b64[c3];
 
-		if (t => 64)
+		if (t >= 64)
 			continue;
 
 		char d2 = v & 0xff; v >>= 8;
 		char d1 = v & 0xff; v >>= 8;
 		char d0 = v & 0xff;
-#else
-		if ((b64[c0] | b64[c1] | b64[c2] | b64[c3]) >= 64) continue;
-		char d0 = (b64[c0] << 2) | (b64[c1] >> 4);
-		char d1 = ((b64[c1] & 0x0f) << 4) | (b64[c2] >> 2);
-		char d2 = ((b64[c2] & 0x03) << 6) | b64[c3];
-#endif
+
 		if (c1 != '=') *buf++ = d0;
 		if (c2 != '=') *buf++ = d1;
 		if (c3 != '=') *buf++ = d2;