diff options
Diffstat (limited to 'src/stable/cryptohash.cpp')
-rw-r--r-- | src/stable/cryptohash.cpp | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/stable/cryptohash.cpp b/src/stable/cryptohash.cpp new file mode 100644 index 0000000..ddd293c --- /dev/null +++ b/src/stable/cryptohash.cpp | |||
@@ -0,0 +1,38 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2007-2011 Xagasoft, All rights reserved. | ||
3 | * | ||
4 | * This file is part of the libbu++ library and is released under the | ||
5 | * terms of the license contained in the file LICENSE. | ||
6 | */ | ||
7 | |||
8 | #include "bu/cryptohash.h" | ||
9 | |||
10 | Bu::CryptoHash::CryptoHash() | ||
11 | { | ||
12 | } | ||
13 | |||
14 | Bu::CryptoHash::~CryptoHash() | ||
15 | { | ||
16 | } | ||
17 | |||
18 | void Bu::CryptoHash::addData( const Bu::String &sData ) | ||
19 | { | ||
20 | addData( sData.getStr(), sData.getSize() ); | ||
21 | } | ||
22 | |||
23 | Bu::String Bu::CryptoHash::getHexResult() | ||
24 | { | ||
25 | Bu::String sResult = getResult(); | ||
26 | Bu::String sRet( 2*sResult.getSize() ); | ||
27 | static const char hex_tab[] = {"0123456789abcdef"}; | ||
28 | |||
29 | int k = 0; | ||
30 | for( int i = 0; i < sResult.getSize(); i++ ) | ||
31 | { | ||
32 | sRet[k++] = hex_tab[(((unsigned char)sResult[i])>>4) & 0xF]; | ||
33 | sRet[k++] = hex_tab[((unsigned char)sResult[i]) & 0xF]; | ||
34 | } | ||
35 | |||
36 | return sRet; | ||
37 | } | ||
38 | |||