Commit 60d0ff6c72ad0435de916b049dca767335651ac2
1 parent
20c2f021
Refactor `MD5` to add `std::string_view` support in `encodeDataIncrementally`, i…
…nline previously separate method, and streamline data encoding logic.
Showing
2 changed files
with
14 additions
and
7 deletions
libqpdf/MD5.cc
| @@ -46,12 +46,6 @@ MD5::appendString(char const* input_string) | @@ -46,12 +46,6 @@ MD5::appendString(char const* input_string) | ||
| 46 | } | 46 | } |
| 47 | 47 | ||
| 48 | void | 48 | void |
| 49 | -MD5::encodeDataIncrementally(char const* data, size_t len) | ||
| 50 | -{ | ||
| 51 | - crypto->MD5_update(QUtil::unsigned_char_pointer(data), len); | ||
| 52 | -} | ||
| 53 | - | ||
| 54 | -void | ||
| 55 | MD5::encodeFile(char const* filename, qpdf_offset_t up_to_offset) | 49 | MD5::encodeFile(char const* filename, qpdf_offset_t up_to_offset) |
| 56 | { | 50 | { |
| 57 | char buffer[1024]; | 51 | char buffer[1024]; |
libqpdf/qpdf/MD5.hh
| @@ -24,7 +24,20 @@ class MD5 | @@ -24,7 +24,20 @@ class MD5 | ||
| 24 | void appendString(char const* input_string); | 24 | void appendString(char const* input_string); |
| 25 | 25 | ||
| 26 | // appends arbitrary data to current md5 object | 26 | // appends arbitrary data to current md5 object |
| 27 | - void encodeDataIncrementally(char const* input_data, size_t len); | 27 | + void |
| 28 | + encodeDataIncrementally(char const* input_data, size_t len) | ||
| 29 | + { | ||
| 30 | + crypto->MD5_update(reinterpret_cast<unsigned char*>(const_cast<char*>(input_data)), len); | ||
| 31 | + } | ||
| 32 | + | ||
| 33 | + // appends arbitrary data to current md5 object | ||
| 34 | + void | ||
| 35 | + encodeDataIncrementally(std::string_view input_data) | ||
| 36 | + { | ||
| 37 | + crypto->MD5_update( | ||
| 38 | + reinterpret_cast<unsigned char*>(const_cast<char*>(input_data.data())), | ||
| 39 | + input_data.size()); | ||
| 40 | + } | ||
| 28 | 41 | ||
| 29 | // computes a raw digest | 42 | // computes a raw digest |
| 30 | void digest(Digest); | 43 | void digest(Digest); |