diff options
-rw-r--r-- | lib/lib.c | 10 | ||||
-rw-r--r-- | lib/lib.h | 1 |
2 files changed, 11 insertions, 0 deletions
@@ -280,6 +280,16 @@ int stridx(char *haystack, char needle) return off-haystack; } +// If *a starts with b, advance *a past it and return 1, else return 0; +int strstart(char **a, char *b) +{ + int len = strlen(b), i = !strncmp(*a, b, len); + + if (i) *a += len; + + return i; +} + // Return how long the file at fd is, if there's any way to determine it. off_t fdlength(int fd) { @@ -145,6 +145,7 @@ long atolx(char *c); long atolx_range(char *numstr, long low, long high); int numlen(long l); int stridx(char *haystack, char needle); +int strstart(char **a, char *b); off_t fdlength(int fd); void loopfiles_rw(char **argv, int flags, int permissions, int failok, void (*function)(int fd, char *name)); |