diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/lib.c | 9 | ||||
-rw-r--r-- | lib/lib.h | 1 |
2 files changed, 10 insertions, 0 deletions
@@ -392,6 +392,15 @@ int unescape(char c) return (idx == -1) ? 0 : to[idx]; } +char *strend(char *str, char *suffix) +{ + long a = strlen(str), b = strlen(suffix); + + if (a>b && !strcmp(str += a-b, suffix)) return str; + + return 0; +} + // If *a starts with b, advance *a past it and return 1, else return 0; int strstart(char **a, char *b) { @@ -206,6 +206,7 @@ char *strlower(char *s); char *strafter(char *haystack, char *needle); char *chomp(char *s); int unescape(char c); +char *strend(char *str, char *suffix); int strstart(char **a, char *b); off_t fdlength(int fd); void loopfiles_rw(char **argv, int flags, int permissions, |