summaryrefslogtreecommitdiff
path: root/klibc_fixups.c
diff options
context:
space:
mode:
Diffstat (limited to 'klibc_fixups.c')
-rw-r--r--klibc_fixups.c33
1 files changed, 33 insertions, 0 deletions
diff --git a/klibc_fixups.c b/klibc_fixups.c
new file mode 100644
index 0000000000..a5d5d5948a
--- /dev/null
+++ b/klibc_fixups.c
@@ -0,0 +1,33 @@
+
+#ifdef __KLIBC__
+
+#include <stdlib.h>
+#include <string.h>
+#include <ctype.h>
+
+char *strerror(int errnum)
+{
+ return "some error";
+}
+
+int strcasecmp(const char *s1, const char *s2)
+{
+ char *n1;
+ char *n2;
+ int retval;
+ int i;
+
+ n1 = strdup(s1);
+ n2 = strdup(s2);
+
+ for (i = 0; i < strlen(n1); ++i)
+ n1[i] = toupper(n1[i]);
+ for (i = 0; i < strlen(n2); ++i)
+ n2[i] = toupper(n2[i]);
+ retval = strcmp(n1, n2);
+ free(n1);
+ free(n2);
+ return retval;
+}
+
+#endif