summaryrefslogtreecommitdiff
path: root/src/user/knob/block.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/user/knob/block.c')
-rw-r--r--src/user/knob/block.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/user/knob/block.c b/src/user/knob/block.c
index 94bd073..90f79e3 100644
--- a/src/user/knob/block.c
+++ b/src/user/knob/block.c
@@ -33,4 +33,28 @@ char *strdup(const char *from) {
char *buf = get_block(end - from);
blockcpy(buf, from, end - from);
return buf;
+}
+
+__attribute__ ((pure))
+bool strequ(const char *a, const char *b) {
+ while (true) {
+ if ((*a == '\0') != (*b == '\0'))
+ return false;
+ if (*a == '\0')
+ return true;
+ if (*a != *b)
+ return false;
+ ++a;
+ ++b;
+ }
+}
+
+__attribute__ ((pure))
+uint32_t strlen(const char *str) {
+ uint32_t len = 0;
+ while (*str) {
+ ++len;
+ ++str;
+ }
+ return len;
} \ No newline at end of file