]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/stored/device.c
Apply patch from Richard Mortimer to ensure that the number
[bacula/bacula] / bacula / src / stored / device.c
index c7407d5d2411f51102022158da453041b51a5cbe..1229daeec35cbd0fc9658814c09dff87e28767ef 100644 (file)
@@ -29,7 +29,7 @@
  *   Version $Id$
  */
 /*
-   Copyright (C) 2000-2005 Kern Sibbald
+   Copyright (C) 2000-2006 Kern Sibbald
 
    This program is free software; you can redistribute it and/or
    modify it under the terms of the GNU General Public License
@@ -48,9 +48,6 @@
 
 /* Forward referenced functions */
 
-extern char my_name[];
-extern int debug_level;
-
 /*
  * This is the dreaded moment. We either have an end of
  * medium condition or worse, and error condition.
@@ -291,38 +288,17 @@ bool open_device(DCR *dcr)
       /* If polling, ignore the error */
       /* If DVD, also ignore the error, very often you cannot open the device
        * (when there is no DVD, or when the one inserted is a wrong one) */
-      if ((!dev->poll) && (!dev->is_dvd())) {
+      if (!dev->poll && !dev->is_dvd() && !dev->is_removable()) {
          Jmsg2(dcr->jcr, M_FATAL, 0, _("Unable to open device %s: ERR=%s\n"),
-            dev->print_name(), strerror_dev(dev));
+            dev->print_name(), dev->bstrerror());
          Pmsg2(000, _("Unable to open archive %s: ERR=%s\n"), 
-            dev->print_name(), strerror_dev(dev));
+            dev->print_name(), dev->bstrerror());
       }
       return false;
    }
    return true;
 }
 
-/*
- * Release any Volume attached to this device 
- *  then close the device.
- */
-void close_device(DEVICE *dev)
-{
-   free_volume(dev);
-   dev->close();
-}
-
-/*
- */
-void force_close_device(DEVICE *dev)
-{
-   if (!dev || dev->fd < 0) {
-      return;
-   }
-   Dmsg1(29, "Force close_dev %s\n", dev->print_name());
-   free_volume(dev);
-   dev->close();
-}
 
 
 void dev_lock(DEVICE *dev)