aboutsummaryrefslogtreecommitdiff
path: root/src/base64.c
diff options
context:
space:
mode:
authorAndreas Schneider <asn@cryptomilk.org>2019-10-31 16:22:20 +0100
committerAndreas Schneider <asn@cryptomilk.org>2019-12-09 16:08:03 +0100
commitfe9991b3c610c8d322714f5697f1cf40cf6aa828 (patch)
treed30ffafb0dfa6c67e00c065e5911690ac74aa5cf /src/base64.c
parent159d95c26c4ae31dac884f6dc82daf3a1e9e6e19 (diff)
downloadlibssh-fe9991b3c610c8d322714f5697f1cf40cf6aa828.tar.gz
libssh-fe9991b3c610c8d322714f5697f1cf40cf6aa828.tar.xz
libssh-fe9991b3c610c8d322714f5697f1cf40cf6aa828.zip
base64: Reformat _bin_to_base64()
Fixes T188 Signed-off-by: Andreas Schneider <asn@cryptomilk.org> Reviewed-by: Jakub Jelen <jjelen@redhat.com>
Diffstat (limited to 'src/base64.c')
-rw-r--r--src/base64.c47
1 files changed, 25 insertions, 22 deletions
diff --git a/src/base64.c b/src/base64.c
index 372dc65f..0b3fc8be 100644
--- a/src/base64.c
+++ b/src/base64.c
@@ -234,29 +234,32 @@ static int get_equals(char *string) {
}
/* thanks sysk for debugging my mess :) */
+static void _bin_to_base64(unsigned char *dest,
+ const unsigned char source[3],
+ int len)
+{
#define BITS(n) ((1 << (n)) - 1)
-static void _bin_to_base64(unsigned char *dest, const unsigned char source[3],
- int len) {
- switch (len) {
- case 1:
- dest[0] = alphabet[(source[0] >> 2)];
- dest[1] = alphabet[((source[0] & BITS(2)) << 4)];
- dest[2] = '=';
- dest[3] = '=';
- break;
- case 2:
- dest[0] = alphabet[source[0] >> 2];
- dest[1] = alphabet[(source[1] >> 4) | ((source[0] & BITS(2)) << 4)];
- dest[2] = alphabet[(source[1] & BITS(4)) << 2];
- dest[3] = '=';
- break;
- case 3:
- dest[0] = alphabet[(source[0] >> 2)];
- dest[1] = alphabet[(source[1] >> 4) | ((source[0] & BITS(2)) << 4)];
- dest[2] = alphabet[ (source[2] >> 6) | (source[1] & BITS(4)) << 2];
- dest[3] = alphabet[source[2] & BITS(6)];
- break;
- }
+ switch (len) {
+ case 1:
+ dest[0] = alphabet[(source[0] >> 2)];
+ dest[1] = alphabet[((source[0] & BITS(2)) << 4)];
+ dest[2] = '=';
+ dest[3] = '=';
+ break;
+ case 2:
+ dest[0] = alphabet[source[0] >> 2];
+ dest[1] = alphabet[(source[1] >> 4) | ((source[0] & BITS(2)) << 4)];
+ dest[2] = alphabet[(source[1] & BITS(4)) << 2];
+ dest[3] = '=';
+ break;
+ case 3:
+ dest[0] = alphabet[(source[0] >> 2)];
+ dest[1] = alphabet[(source[1] >> 4) | ((source[0] & BITS(2)) << 4)];
+ dest[2] = alphabet[(source[2] >> 6) | (source[1] & BITS(4)) << 2];
+ dest[3] = alphabet[source[2] & BITS(6)];
+ break;
+ }
+#undef BITS
}
/**