diff --git a/apps/rehash.c b/apps/rehash.c index ee362b5fbdcf5015bdf924b620b39fc0128fbb38..443c15e13c6b2cc6fb8ed22bc580b692475cc445 100644 --- a/apps/rehash.c +++ b/apps/rehash.c @@ -174,9 +174,11 @@ static int handle_symlink(const char *filename, const char *fullpath) } if (filename[i++] != '.') return -1; - for (type = OSSL_NELEM(suffixes) - 1; type > 0; type--) - if (strcasecmp(suffixes[type], &filename[i]) == 0) + for (type = OSSL_NELEM(suffixes) - 1; type > 0; type--) { + const char *suffix = suffixes[type]; + if (strncasecmp(suffix, &filename[i], strlen(suffix)) == 0) break; + } i += strlen(suffixes[type]); id = strtoul(&filename[i], &endptr, 10);