extern PRINTF_LIKE(2, 3) NORETURN
void bail_syserr(int err, const char *fmt, ...);
+#define PNF_JUNK 1u
+extern double parse_float(const char **p_inout, unsigned f,
+ double min, double max, const char *what);
+extern long parse_int(const char **p_inout, unsigned f,
+ long min, long max, const char *what);
+
extern void sit(double t);
extern void carefully_write(int fd, const void *buf, size_t sz);
const char *what);
extern void check_write(FILE *fp, const char *what);
extern void carefully_fclose(FILE *fp, const char *what);
+extern off_t device_size(int fd, const char *file, int *blksz_out);
enum { RAW, IFO, VOB, BUP };
typedef uint_least32_t ident;
#define MAXFNSZ (1 + 8 + 1 + 12 + 1)
extern void store_filename(char *buf, ident id);
+#define DIF_MUSTVOLINF 1u
+#define DIF_MUSTIFOHASH 2u
+#define MAXIDSZ 99
+extern int dvd_id(char *p, dvd_reader_t *dvd, unsigned f, const char *file);
+
struct banner_progress_item {
struct progress_item _base;
const char *msg;