/* Version */
-#define SHER_VER "1.3"
+#define SHER_VER "2.0-alpha"
/* Features */
+/* FIXME: Prune */
#define SHERLOCK_CONFIG_REF_WEIGHTS /* Weighed references */
#define SHERLOCK_CONFIG_LARGE_DB /* Support for DB files >4GB */
#define SHERLOCK_CONFIG_LFS /* Large files on 32-bit systems */
#undef inline
#define NONRET __attribute__((noreturn))
+#define UNUSED __attribute__((unused))
#else
#define inline
#define NONRET
+#define UNUSED
#endif
void delete_temp(struct tempfile *);
u32 temprand(uns);
+/* FIXME: Remove? */
#define TF_GENERIC "t"
#define TF_QUEUE_CONTROL "c"
#define TF_QUEUE_DATA "d"
#define TF_TRANSFORM "s"
#define TF_OBJECT "o"
-/* Config Files */
-
-struct cfitem {
- byte *name;
- int type;
- void *var;
-};
-
-#define CI_STOP 0
-#define CI_INT 1
-#define CI_STRING 2
-#define CI_FUNCTION 3
-
-typedef byte *(*ci_func)(struct cfitem *, byte *);
-
-void cf_read(byte *, struct cfitem *);
-int cf_read_err(byte *, struct cfitem *); /* Read with possible error, 1 = succeeded */
-
/* Logging */
+/* FIXME: Define new logging mechanism? */
+
#define L_DEBUG "<0>"
#define L_INFO "<2>"
#define L_WARN "<4>"
/* Content-Type pattern matching and filters */
-struct ct_filter;
-
int match_ct_patt(byte *, byte *);
-struct ct_filter *new_ct_filter(void);
-byte *add_ct_filter(struct ct_filter *, byte *);
-int match_ct_filter(struct ct_filter *, byte *);
-
/* Binary log */
int log2(u32);
/* obj.c */
+/* FIXME: What to do with this? */
+
struct odes { /* Object description */
struct oattr *attrs;
struct mempool *pool;
/* oname.c */
+/* FIXME: Kill? */
+
#define OID_MIN 0x10000 /* Values less than this have special meaning */
oid_t new_oid(uns);
int rx_match(regex *r, byte *s);
int rx_subst(regex *r, byte *by, byte *src, byte *dest, uns destlen);
-/* objwalk.c */
-
-void scan_obj_tree(byte *, void (*)(oid_t, byte *));
-
/* random.c */
uns random_max(uns);
void insert_node(node *, node *);
#if !defined(_SHERLOCK_LISTS_C) && defined(__GNUC__)
-#define LIST_INLINE static inline
+#define LIST_INLINE extern inline
#include "lib/lists.c"
#undef LIST_INLINE
#else