diff options
Diffstat (limited to 'extra/yassl/taocrypt/src/misc.cpp')
-rw-r--r-- | extra/yassl/taocrypt/src/misc.cpp | 57 |
1 files changed, 28 insertions, 29 deletions
diff --git a/extra/yassl/taocrypt/src/misc.cpp b/extra/yassl/taocrypt/src/misc.cpp index 0b33bb38aea..3d0539187a7 100644 --- a/extra/yassl/taocrypt/src/misc.cpp +++ b/extra/yassl/taocrypt/src/misc.cpp @@ -25,58 +25,57 @@ #include "runtime.hpp" #include "misc.hpp" - -void* operator new(size_t sz, TaoCrypt::new_t) -{ #ifdef YASSL_PURE_C + + void* operator new(size_t sz, TaoCrypt::new_t) + { void* ptr = malloc(sz ? sz : 1); if (!ptr) abort(); return ptr; -#else - return ::operator new(sz); -#endif -} + } -void operator delete(void* ptr, TaoCrypt::new_t) -{ -#ifdef YASSL_PURE_C + void operator delete(void* ptr, TaoCrypt::new_t) + { if (ptr) free(ptr); -#else - ::operator delete(ptr); -#endif -} + } -void* operator new[](size_t sz, TaoCrypt::new_t nt) -{ + void* operator new[](size_t sz, TaoCrypt::new_t nt) + { return ::operator new(sz, nt); -} + } -void operator delete[](void* ptr, TaoCrypt::new_t nt) -{ + void operator delete[](void* ptr, TaoCrypt::new_t nt) + { ::operator delete(ptr, nt); -} + } -/* uncomment to test -// make sure not using globals anywhere by forgetting to use overloaded -void* operator new(size_t sz); + /* uncomment to test + // make sure not using globals anywhere by forgetting to use overloaded + void* operator new(size_t sz); -void operator delete(void* ptr); + void operator delete(void* ptr); -void* operator new[](size_t sz); + void* operator new[](size_t sz); -void operator delete[](void* ptr); -*/ + void operator delete[](void* ptr); + */ -namespace TaoCrypt { + namespace TaoCrypt { + + new_t tc; // for library new + + } + +#endif // YASSL_PURE_C -new_t tc; // for library new +namespace TaoCrypt { inline void XorWords(word* r, const word* a, unsigned int n) |