struct lbx_file_ops {
size_t (*read)(void *buf, size_t size, void *handle);
int (*seek)(void *handle, long offset, int whence);
- long (*tell)(void *handle);
int (*eof) (void *handle);
};
extern const struct lbx_file_ops lbx_arch_fops;
/* Opaque */
-typedef struct lbx LBX;
typedef struct lbx_file_state LBXfile;
struct lbx {
};
/* Archive operations */
-LBX *lbx_open(void *handle, const struct lbx_file_ops *fops,
- int (*destructor)(void *handle), const char *name);
-LBX *lbx_fopen(const char *);
-LBX *lbx_mopen(void *, size_t, const char *);
-int lbx_close(LBX *);
-size_t lbx_numfiles(LBX *);
+struct lbx *lbx_open(void *handle, const struct lbx_file_ops *fops,
+ int (*destructor)(void *handle), const char *name);
+struct lbx *lbx_fopen(const char *);
+int lbx_close(struct lbx *);
/* File operations */
-int lbx_file_stat(LBX *lbx, unsigned fileno, struct lbx_statbuf *out);
-LBXfile *lbx_file_open(LBX *lbx, unsigned fileno);
+int lbx_file_stat(struct lbx *lbx, unsigned fileno, struct lbx_statbuf *out);
+LBXfile *lbx_file_open(struct lbx *lbx, unsigned fileno);
size_t lbx_file_read(LBXfile *f, void *buf, size_t n);
int lbx_file_seek(LBXfile *f, long offset, int whence);
long lbx_file_tell(LBXfile *f);