diff options
Diffstat (limited to 'core/ustring.cpp')
-rw-r--r-- | core/ustring.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/core/ustring.cpp b/core/ustring.cpp index ea9a9d903e..43e3a9a0bd 100644 --- a/core/ustring.cpp +++ b/core/ustring.cpp @@ -2419,6 +2419,23 @@ Vector<uint8_t> String::md5_buffer() const { return ret; }; +Vector<uint8_t> String::sha256_buffer() const { + CharString cs = utf8(); + unsigned char hash[32]; + sha256_context ctx; + sha256_init(&ctx); + sha256_hash(&ctx, (unsigned char*)cs.ptr(), cs.length()); + sha256_done(&ctx, hash); + + Vector<uint8_t> ret; + ret.resize(32); + for (int i = 0; i < 32; i++) { + ret[i] = hash[i]; + } + + return ret; +} + String String::insert(int p_at_pos,String p_string) const { |