aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/base64.h
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2017-04-16 01:20:43 +0200
committerJason A. Donenfeld <Jason@zx2c4.com>2017-04-19 18:26:32 +0200
commit755217bd853f2581a8bb420728942cf785afe204 (patch)
treec7f9d39659e43bbbe1c62370787b5ff7c2925593 /src/base64.h
parentwg: do not use addrconfig with port in gai (diff)
downloadwireguard-tools-755217bd853f2581a8bb420728942cf785afe204.tar.xz
wireguard-tools-755217bd853f2581a8bb420728942cf785afe204.zip
wg: side channel resistant base64
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'src/base64.h')
-rw-r--r--src/base64.h17
1 files changed, 6 insertions, 11 deletions
diff --git a/src/base64.h b/src/base64.h
index 4ad0ac3..37cf1b9 100644
--- a/src/base64.h
+++ b/src/base64.h
@@ -3,18 +3,13 @@
#ifndef BASE64_H
#define BASE64_H
-#include <resolv.h>
+#include <stdbool.h>
+#include <stdint.h>
+#include "../uapi.h"
-#define b64_len(len) ((((len) + 2) / 3) * 4 + 1)
+#define WG_KEY_LEN_BASE64 ((((WG_KEY_LEN) + 2) / 3) * 4 + 1)
-#ifndef b64_ntop
-int b64_ntop(unsigned char const *, size_t, char *, size_t);
-#define NEED_B64_NTOP
-#endif
-
-#ifndef b64_pton
-int b64_pton(char const *, unsigned char *, size_t);
-#define NEED_B64_PTON
-#endif
+void key_to_base64(char base64[static WG_KEY_LEN_BASE64], const uint8_t key[static WG_KEY_LEN]);
+bool key_from_base64(uint8_t key[static WG_KEY_LEN], const char *base64);
#endif