Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301, USA.
- Bacula® is a registered trademark of John Walker.
+ Bacula® is a registered trademark of Kern Sibbald.
The licensor of Bacula is the Free Software Foundation Europe
(FSFE), Fiduciary Program, Sumatrastrasse 25, 8006 Zürich,
Switzerland, email:ftf@fsfeurope.org.
*/
int vtape_open(const char *pathname, int flags, ...);
int vtape_close(int fd);
-int vtape_ioctl(int fd, unsigned long int request, ...);
+int vtape_ioctl(int fd, ioctl_req_t request, ...);
void vtape_debug(int level);
ssize_t vtape_read(int fd, void *buffer, size_t count);
ssize_t vtape_write(int fd, const void *buffer, size_t count);
#define FTAPE_MAX_DRIVE 50
+#define VTAPE_MAX_BLOCK 20*1024*2048; /* 20GB */
+
typedef enum {
- VT_READ_EOF, /* Need to read the entire EOF struct */
- VT_SKIP_EOF /* Have already read the EOF byte */
+ VT_READ_EOF, /* Need to read the entire EOF struct */
+ VT_SKIP_EOF /* Have already read the EOF byte */
} VT_READ_FM_MODE;
class vtape {
private:
int fd; /* Our file descriptor */
- off_t file_block; /* size */
- off_t max_block;
+ boffset_t file_block; /* size */
+ boffset_t max_block;
- off_t last_FM; /* last file mark (last file) */
- off_t next_FM; /* next file mark (next file) */
- off_t cur_FM; /* current file mark */
+ boffset_t last_FM; /* last file mark (last file) */
+ boffset_t next_FM; /* next file mark (next file) */
+ boffset_t cur_FM; /* current file mark */
bool atEOF; /* End of file */
bool atEOT; /* End of media */
};
-#endif /*!USE_VTAPE */
+#endif /*!USE_VTAPE */
#endif /* !VTAPE_H */