diff options
Diffstat (limited to 'src/lib.c')
-rw-r--r-- | src/lib.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/lib.c b/src/lib.c new file mode 100644 index 0000000..d072f1a --- /dev/null +++ b/src/lib.c @@ -0,0 +1,14 @@ +#include <lib.h> + +int strncmp(const char *lhs, const char *rhs, unsigned long n) { + const unsigned char *l=(void *)lhs, *r=(void *)rhs; + if (!n--) return 0; + for (; *l && *r && n && *l == *r ; l++, r++, n--); + return *l - *r; +} + +int memcmp(const void *vl, const void *vr, unsigned long n) { + const unsigned char *l = vl, *r = vr; + for (; n && *l == *r; n--, l++, r++); + return n ? *l-*r : 0; +} |