/*
* mem routines
*/
-extern void* memccpy(void*, void*, int, ulong);
-extern void* memset(void*, int, ulong);
-extern int memcmp(void*, void*, ulong);
-extern void* memcpy(void*, void*, ulong);
-extern void* memmove(void*, void*, ulong);
-extern void* memchr(void*, int, ulong);
+extern void* memccpy(void*, void*, int, usize);
+extern void* memset(void*, int, usize);
+extern int memcmp(void*, void*, usize);
+extern void* memcpy(void*, void*, usize);
+extern void* memmove(void*, void*, usize);
+extern void* memchr(void*, int, usize);
/*
* string routines
typedef
struct Tm
{
- vlong abs; /* seconds since Jan 1 1970, GMT */
int nsec; /* nseconds (range 0...1e9) */
int sec; /* seconds (range 0..60) */
int min; /* minutes (0..59) */
#pragma varargck type "τ" Tmfmt
-extern Tzone* tmgetzone(char *name);
+extern Tzone* tzload(char *name);
extern Tm* tmnow(Tm*, Tzone*);
extern Tm* tmtime(Tm*, vlong, Tzone*);
extern Tm* tmtimens(Tm*, vlong, int, Tzone*);
-extern Tm* tmparse(Tm*, char*, char*, Tzone*);
-extern Tm* tmnorm(Tm*);
+extern Tm* tmparse(Tm*, char*, char*, Tzone*, char **ep);
+extern vlong tmnorm(Tm*);
extern Tmfmt tmfmt(Tm*, char*);
extern void tmfmtinstall(void);
extern char* cleanname(char*);
extern int decrypt(void*, void*, int);
extern int encrypt(void*, void*, int);
+
extern int dec64(uchar*, int, char*, int);
extern int enc64(char*, int, uchar*, int);
+extern int dec64x(uchar*, int, char*, int, int (*)(int));
+extern int enc64x(char*, int, uchar*, int, int (*)(int));
extern int dec32(uchar*, int, char*, int);
extern int enc32(char*, int, uchar*, int);
+extern int dec32x(uchar*, int, char*, int, int (*)(int));
+extern int enc32x(char*, int, uchar*, int, int (*)(int));
extern int dec16(uchar*, int, char*, int);
extern int enc16(char*, int, uchar*, int);
extern int dec64chr(int);
extern int enc32chr(int);
extern int dec16chr(int);
extern int enc16chr(int);
+
extern int encodefmt(Fmt*);
extern void exits(char*);
extern double frexp(double, int*);