#include <time.h>
#include <stdio.h>
+#include "fs.h"
+
+#ifdef __GNUC__
+#define NULL_TERMINATED __attribute__ ((__sentinel__))
+#else
+#define NULL_TERMINATED
+#endif
#define ARRAYSIZE(a) (sizeof (a) / sizeof ((a)[0]))
#define MIN(x, y) ((x) < (y) ? (x) : (y))
#define MAX(x, y) ((x) > (y) ? (x) : (y))
-int read_line(char **, FILE *);
+int read_line(char **, fs_file);
char *strip_newline(char *);
+
char *dupe_string(const char *);
+char *concat_string(const char *first, ...) NULL_TERMINATED;
+char *trunc_string(const char *src, char *dst, int len);
#ifdef strdup
#undef strdup