summaryrefslogtreecommitdiff
path: root/os/boot/pc/lib.h
diff options
context:
space:
mode:
authorCharles.Forsyth <devnull@localhost>2008-06-11 14:21:44 +0000
committerCharles.Forsyth <devnull@localhost>2008-06-11 14:21:44 +0000
commit8a8c2d742b51525f66c2210e3c8a251de10022ff (patch)
tree8282ce595e5fbe2e487dc20f54891d9e9e7cbf37 /os/boot/pc/lib.h
parent31a18a6996a6b5927e39cc553696c167e6c88e3d (diff)
20080611-1520
Diffstat (limited to 'os/boot/pc/lib.h')
-rw-r--r--os/boot/pc/lib.h18
1 files changed, 11 insertions, 7 deletions
diff --git a/os/boot/pc/lib.h b/os/boot/pc/lib.h
index a011b5e4..eea74e3e 100644
--- a/os/boot/pc/lib.h
+++ b/os/boot/pc/lib.h
@@ -1,3 +1,5 @@
+#define offsetof(s, m) (ulong)(&(((s*)0)->m))
+
/*
* functions (possibly) linked in, complete, from libc.
*/
@@ -5,17 +7,17 @@
/*
* mem routines
*/
-extern void* memccpy(void*, void*, int, long);
-extern void* memset(void*, int, long);
-extern int memcmp(void*, void*, long);
-extern void* memmove(void*, void*, long);
-extern void* memchr(void*, int, long);
+extern void* memccpy(void*, void*, int, ulong);
+extern void* memset(void*, int, ulong);
+extern int memcmp(void*, void*, ulong);
+extern void* memmove(void*, void*, ulong);
+extern void* memchr(void*, int, ulong);
/*
* string routines
*/
extern char* strcat(char*, char*);
-extern char* strchr(char*, char);
+extern char* strchr(char*, int);
extern int strcmp(char*, char*);
extern char* strcpy(char*, char*);
extern char* strncat(char*, char*, long);
@@ -51,6 +53,7 @@ extern int sprint(char*, char*, ...);
extern int snprint(char*, int, char*, ...);
extern int fmtinstall(int, int (*)(Fmt*));
+#pragma varargck argpos addconf 1
#pragma varargck argpos fmtprint 2
#pragma varargck argpos print 1
#pragma varargck argpos seprint 3
@@ -94,9 +97,10 @@ extern int fmtinstall(int, int (*)(Fmt*));
* one-of-a-kind
*/
extern int atoi(char*);
-extern ulong getcallerpc(void*);
+extern uintptr getcallerpc(void*);
extern long strtol(char*, char**, int);
extern ulong strtoul(char*, char**, int);
+extern uvlong strtoull(char*, char**, int);
extern long end;
#define NAMELEN 28