]> git.ipfire.org Git - thirdparty/ldns.git/commitdiff
Numeric algorithm names should contain only digits
authorWillem Toorop <willem@nlnetlabs.nl>
Wed, 8 Oct 2014 14:05:12 +0000 (16:05 +0200)
committerWillem Toorop <willem@nlnetlabs.nl>
Wed, 8 Oct 2014 14:05:12 +0000 (16:05 +0200)
keys.c

diff --git a/keys.c b/keys.c
index eb9cf4273af3e0e12c7b4c32b504f95f4d1072fb..8b4382101af6b19fe28dff4c68f25f3ffff5ca79 100644 (file)
--- a/keys.c
+++ b/keys.c
@@ -1704,6 +1704,9 @@ ldns_signing_algorithm ldns_get_signing_algorithm_by_name(const char* name)
                 {LDNS_PRIVATEOID, "PRIVATEOID"},
                 {0, NULL}};
         ldns_lookup_table* lt = ldns_signing_algorithms;
+       ldns_signing_algorithm a;
+       char *endptr;
+
         while(lt->name) {
                 if(strcasecmp(lt->name, name) == 0)
                         return lt->id;
@@ -1715,7 +1718,9 @@ ldns_signing_algorithm ldns_get_signing_algorithm_by_name(const char* name)
                         return lt->id;
                 lt++;
         }
-        if(atoi(name) != 0)
-                return atoi(name);
+       a = strtol(name, &endptr, 10);
+       if (*name && !*endptr)
+               return a;
+
         return 0;
 }