+struct lbx_statbuf {
+ const char *name;
+ size_t size;
+};
+
+/* Archive operations */
+LBX *lbx_open(void *handle, const struct lbx_file_ops *fops,
+ int (*destructor)(void *handle), const char *name);
+LBX *lbx_fopen(FILE *, const char *);
+LBX *lbx_mopen(void *, size_t, const char *);
+int lbx_close(LBX *);
+size_t lbx_numfiles(LBX *);
+
+/* File operations */
+int lbx_stat(LBX *, size_t, struct lbx_statbuf *);
+size_t lbx_extract(LBX *, size_t, FILE *);
+
+/* Misc operations */
+const char *lbx_strerror(void);