MCPcopy Create free account
hub / github.com/bfbbdecomp/bfbb / __IPEncodeToBase64

Function __IPEncodeToBase64

src/dolphin/src/eth/base64.c:7–41  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

5};
6
7char *__IPEncodeToBase64(void *_src, s32 len , char *dst) {
8 const u8 *src;
9 int i;
10 char *p;
11
12 src = _src;
13 p = dst;
14 for (i = 0; i < len - len % 3; i += 3) {
15 *p++ = Base64[(src[i+0] >> 2) & 0x3f];
16 *p++ = Base64[((src[i+0] & 0x3) << 4) | ((src[i+1] >> 4) & 0xf)];
17 *p++ = Base64[((src[i+1] & 0xf) << 2) | ((src[i+2] >> 6) & 0x3)];
18 *p++ = Base64[src[i+2] & 0x3f];
19 }
20
21 i = len - len % 3;
22 // Encode remaining characters
23 switch (len % 3) {
24 case 2: {
25 *p++ = Base64[(src[i+0] >> 2) & 0x3f];
26 *p++ = Base64[((src[i+0] & 0x3) << 4) | ((src[i+1] >> 4) & 0xf)];
27 *p++ = Base64[((src[i+1] & 0xf) << 2)];
28 *p++ = '=';
29 break;
30 }
31 case 1: {
32 *p++ = Base64[(src[i+0] >> 2) & 0x3f];
33 *p++ = Base64[((src[i+0] & 0x3) << 4)];
34 *p++ = '=';
35 *p++ = '=';
36 break;
37 }
38 }
39
40 return p;
41}
42
43void *__IPDecodeFromBase64(const char *src, long len , void *_dst) {
44 u8 *dst;

Callers 1

__ETHPostSendFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected