diff options
author | Vadim Dashevskiy <watcherhd@gmail.com> | 2012-05-15 10:38:20 +0000 |
---|---|---|
committer | Vadim Dashevskiy <watcherhd@gmail.com> | 2012-05-15 10:38:20 +0000 |
commit | 48540940b6c28bb4378abfeb500ec45a625b37b6 (patch) | |
tree | 2ef294c0763e802f91d868bdef4229b6868527de /plugins/CryptoPP/base16.h | |
parent | 5c350913f011e119127baeb32a6aedeb4f0d33bc (diff) |
initial commit
git-svn-id: http://svn.miranda-ng.org/main/trunk@2 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/CryptoPP/base16.h')
-rw-r--r-- | plugins/CryptoPP/base16.h | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/plugins/CryptoPP/base16.h b/plugins/CryptoPP/base16.h new file mode 100644 index 0000000000..f5f368ebaa --- /dev/null +++ b/plugins/CryptoPP/base16.h @@ -0,0 +1,53 @@ +#ifndef __BASE_16__
+#define __BASE_16__
+
+#define BERR 0xFF /* Illegal char marker */
+#define BEOF 0x7F /* EOF marker (padding char or EOL) */
+
+typedef unsigned char byte;
+
+static const byte asciiToBin16[] =
+ { BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BEOF, BERR, BERR, BEOF, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+ 0x08, 0x09, BERR, BERR, BERR, BEOF, BERR, BERR,
+ BERR, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR,
+ BERR, BERR, BERR, BERR, BERR, BERR, BERR, BERR
+ };
+
+static const byte binToAscii16[] = "0123456789ABCDEF";
+
+char *base16encode(const char *, const int);
+char *base16decode(const char *, int *);
+char *base16decode(const char *);
+
+#define encode16(data) binToAscii16[data]
+#define decode16(data) asciiToBin16[data]
+
+#endif
|