aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSzczepan Zalega <szczepan@nitrokey.com>2017-10-21 14:58:05 +0200
committerSzczepan Zalega <szczepan@nitrokey.com>2017-10-21 14:58:05 +0200
commit727c31c7288e3c37d7711bd2e691ef819542c016 (patch)
tree3c681b5839253eb4a95c4de32abbcd3b62a27465
parent7797c8fb5fa69068dd659c369bc774ca74f592fe (diff)
downloadlibnitrokey-use_strnlen.tar.gz
libnitrokey-use_strnlen.tar.bz2
Use strnlen and constsuse_strnlen
Signed-off-by: Szczepan Zalega <szczepan@nitrokey.com>
-rw-r--r--misc.cc8
1 files changed, 4 insertions, 4 deletions
diff --git a/misc.cc b/misc.cc
index d7278da..6e4e7d5 100644
--- a/misc.cc
+++ b/misc.cc
@@ -13,8 +13,8 @@ namespace misc {
::std::vector<uint8_t> hex_string_to_byte(const char* hexString){
- const size_t big_string_size = 256; //arbitrary 'big' number
- const size_t s_size = strlen(hexString);
+ constexpr size_t big_string_size = 256; //arbitrary 'big' number
+ const size_t s_size = strnlen(hexString, big_string_size+1);
const size_t d_size = s_size/2;
if (s_size%2!=0 || s_size>big_string_size){
throw InvalidHexString(0);
@@ -25,8 +25,8 @@ namespace misc {
char buf[2];
for(size_t i=0; i<s_size; i++){
- char c = hexString[i];
- bool char_from_range = (('0' <= c && c <='9') || ('A' <= c && c <= 'F') || ('a' <= c && c<= 'f'));
+ const char c = hexString[i];
+ const bool char_from_range = (('0' <= c && c <='9') || ('A' <= c && c <= 'F') || ('a' <= c && c<= 'f'));
if (!char_from_range){
throw InvalidHexString(c);
}