summaryrefslogtreecommitdiffstats
path: root/lib/frrstr.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/frrstr.h')
-rw-r--r--lib/frrstr.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/lib/frrstr.h b/lib/frrstr.h
index 19ba09e..33a4992 100644
--- a/lib/frrstr.h
+++ b/lib/frrstr.h
@@ -3,6 +3,7 @@
* FRR string processing utilities.
* Copyright (C) 2018 Cumulus Networks, Inc.
* Quentin Young
+ * Copyright (c) 2023, LabN Consulting, L.L.C.
*/
#ifndef _FRRSTR_H_
@@ -166,6 +167,19 @@ int all_digit(const char *str);
*/
char *frrstr_hex(char *buff, size_t bufsiz, const uint8_t *str, size_t num);
+/*
+ * Advance past a given char `skipc` in a string, while honoring quoting and
+ * backslash escapes (i.e., ignore `skipc` which occur in quoted sections).
+ */
+const char *frrstr_skip_over_char(const char *s, int skipc);
+
+/*
+ * Advance back from end to a given char `toc` in a string, while honoring
+ * quoting and backslash escapes. `toc` chars inside quote or escaped are
+ * ignored.
+ */
+const char *frrstr_back_to_char(const char *s, int toc);
+
#ifdef __cplusplus
}
#endif