]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/stored/protos.h
Make btape fill/unfill work
[bacula/bacula] / bacula / src / stored / protos.h
index db1aa18cee04bd0efc417b097cca519b9656f423..6a95c82c9e4f929d4d99349f543be7b8cdfb2c1b 100644 (file)
@@ -5,7 +5,7 @@
  */
 
 /*
-   Copyright (C) 2000, 2001, 2002 Kern Sibbald and John Walker
+   Copyright (C) 2000-2003 Kern Sibbald and John Walker
 
    This program is free software; you can redistribute it and/or
    modify it under the terms of the GNU General Public License as
@@ -28,7 +28,7 @@
 uint32_t new_VolSessionId();
 
 /* From acquire.c */
-int      acquire_device_for_append(JCR *jcr, DEVICE *dev, DEV_BLOCK *block);
+DEVICE  *acquire_device_for_append(JCR *jcr, DEVICE *dev, DEV_BLOCK *block);
 int      acquire_device_for_read(JCR *jcr, DEVICE *dev, DEV_BLOCK *block);
 int      release_device(JCR *jcr, DEVICE *dev);
 
@@ -54,12 +54,15 @@ void    empty_block(DEV_BLOCK *block);
 void    free_block(DEV_BLOCK *block);
 int     write_block_to_device(JCR *jcr, DEVICE *dev, DEV_BLOCK *block);
 int     write_block_to_dev(JCR *jcr, DEVICE *dev, DEV_BLOCK *block);
-int     read_block_from_device(DEVICE *dev, DEV_BLOCK *block);
-int     read_block_from_dev(DEVICE *dev, DEV_BLOCK *block);
+
+#define CHECK_BLOCK_NUMBERS    true
+#define NO_BLOCK_NUMBER_CHECK  false
+int     read_block_from_device(JCR *jcr, DEVICE *dev, DEV_BLOCK *block, bool check_block_numbers);
+int     read_block_from_dev(JCR *jcr, DEVICE *dev, DEV_BLOCK *block, bool check_block_numbers);
 
 /* From butil.c -- utilities for SD tool programs */
 void    print_ls_output(char *fname, char *link, int type, struct stat *statp);
-JCR    *setup_jcr(char *name, char *device, BSR *bsr); 
+JCR    *setup_jcr(char *name, char *device, BSR *bsr, char *VolumeName);
 DEVICE *setup_to_access_device(JCR *jcr, int read_access);
 void    display_error_status(DEVICE *dev);
 DEVRES *find_device_res(char *device_name, int read_access);
@@ -92,6 +95,7 @@ int      bsr_dev(DEVICE *dev, int num);
 void     attach_jcr_to_device(DEVICE *dev, JCR *jcr);
 void     detach_jcr_from_device(DEVICE *dev, JCR *jcr);
 JCR     *next_attached_jcr(DEVICE *dev, JCR *jcr);
+int     dev_can_write(DEVICE *dev);
 
 
 /* Get info about device */
@@ -119,15 +123,12 @@ void  new_steal_device_lock(DEVICE *dev, brwsteal_t *hold, int state);
 void  new_return_device_lock(DEVICE *dev, brwsteal_t *hold);
 
 /* From dircmd.c */
-void     connection_request(void *arg); 
+void     *connection_request(void *arg); 
 
 
 /* From fd_cmds.c */
 void     run_job(JCR *jcr);
 
-/* From fdmsg.c */
-int      bget_msg(BSOCK *sock);
-
 /* From job.c */
 void     stored_free_jcr(JCR *jcr);
 void     connection_from_filed(void *arg);     
@@ -152,7 +153,11 @@ int match_bsr(BSR *bsr, DEV_RECORD *rec, VOLUME_LABEL *volrec,
 /* From mount.c */
 int      mount_next_write_volume(JCR *jcr, DEVICE *dev, DEV_BLOCK *block, int release);
 int      mount_next_read_volume(JCR *jcr, DEVICE *dev, DEV_BLOCK *block);
+
+/* From autochanger.c */
 int      autoload_device(JCR *jcr, DEVICE *dev, int writing, BSOCK *dir);
+int      autochanger_list(JCR *jcr, DEVICE *dev, BSOCK *dir);
+void     invalidate_slot_in_catalog(JCR *jcr);
 
 
 /* From parse_bsr.c */