-/** strnewdup() is an implemenetation of strdup() which calls operator new
- * rather than malloc to allocate the new string, therefore allowing it to
- * be hooked into the C++ memory manager, and freed with operator delete.
- * This is required for windows, where we override operators new and delete
- * to allow for global allocation between modules and the core.
- */
-inline char * strnewdup(const char * s1)
-{
- size_t len = strlen(s1) + 1;
- char * p = new char[len];
- memcpy(p, s1, len);
- return p;
-}
+/** Binary to hexadecimal conversion */
+CoreExport std::string BinToHex(const std::string& data);
+/** Base64 encode */
+CoreExport std::string BinToBase64(const std::string& data, const char* table = NULL, char pad = 0);
+/** Base64 decode */
+CoreExport std::string Base64ToBin(const std::string& data, const char* table = NULL);