summaryrefslogtreecommitdiff
path: root/lib/frrstr.c
diff options
context:
space:
mode:
authorRenato Westphal <renato@opensourcerouting.org>2019-05-27 20:55:14 -0300
committerGitHub <noreply@github.com>2019-05-27 20:55:14 -0300
commita26bd54e86825ed1376650618c2f542020d10972 (patch)
tree1f548ebadfeef2fd3dab389b378f0128efcde0c2 /lib/frrstr.c
parentd78978e49f090139bfa5cb77a5e07ecd7953f7d9 (diff)
parent90cf59eccfd41846fc0fa03a6d5a010a91b46b86 (diff)
Merge pull request #4390 from qlyoung/frrstr-beginswith-endswith
lib: rename begins_with, add frrstr_endswith
Diffstat (limited to 'lib/frrstr.c')
-rw-r--r--lib/frrstr.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/lib/frrstr.c b/lib/frrstr.c
index fbbc890ec6..c575c0b568 100644
--- a/lib/frrstr.c
+++ b/lib/frrstr.c
@@ -178,7 +178,7 @@ char *frrstr_replace(const char *str, const char *find, const char *replace)
return nustr;
}
-bool begins_with(const char *str, const char *prefix)
+bool frrstr_startswith(const char *str, const char *prefix)
{
if (!str || !prefix)
return false;
@@ -192,6 +192,20 @@ bool begins_with(const char *str, const char *prefix)
return strncmp(str, prefix, lenprefix) == 0;
}
+bool frrstr_endswith(const char *str, const char *suffix)
+{
+ if (!str || !suffix)
+ return false;
+
+ size_t lenstr = strlen(str);
+ size_t lensuffix = strlen(suffix);
+
+ if (lensuffix > lenstr)
+ return false;
+
+ return strncmp(&str[lenstr - lensuffix], suffix, lensuffix) == 0;
+}
+
int all_digit(const char *str)
{
for (; *str != '\0'; str++)