From 513b913b8683ccee0eacac2ab11fb17beaad22db Mon Sep 17 00:00:00 2001
From: Steven Murray <Steven.Murray@cern.ch>
Date: Wed, 10 Dec 2014 18:45:14 +0100
Subject: [PATCH] Improved the VID searches of rmcd's mount and dismount

---
 mediachanger/castorrmc/rmc/rmc_smcsubr.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/mediachanger/castorrmc/rmc/rmc_smcsubr.c b/mediachanger/castorrmc/rmc/rmc_smcsubr.c
index 9787fba0d0..7e9e630169 100644
--- a/mediachanger/castorrmc/rmc/rmc_smcsubr.c
+++ b/mediachanger/castorrmc/rmc/rmc_smcsubr.c
@@ -741,7 +741,8 @@ int smc_dismount (
     /* check that the vid is in a slot before returning */
     while (1) {   
           struct smc_element_info vol_element_info;
-          if (0 > smc_find_cartridge (fd, loader, drive_element_info.name, 0, 0, 1, &vol_element_info)) {
+          const int elementType = 2; // Storage element
+          if (0 > smc_find_cartridge (fd, loader, drive_element_info.name, elementType, 0, 1, &vol_element_info)) {
               const int smc_error = smc_lasterror (&smc_status, &msgaddr);
               rmc_usrmsg ( rpfd, func, SR017, "find_cartridge", drive_element_info.name, msgaddr);
               return (smc_error);
@@ -930,7 +931,8 @@ int smc_mount (
 	strncpy (func, "smc_mount", sizeof(func));
 	func[sizeof(func) - 1] = '\0';
 
-	if ((c = smc_find_cartridge (fd, loader, vid, 0, 0, 1, &element_info)) < 0) {
+	const int elementType = 2; // Storage element
+	if ((c = smc_find_cartridge (fd, loader, vid, elementType, 0, 1, &element_info)) < 0) {
 		c = smc_lasterror (&smc_status, &msgaddr);
 		rmc_usrmsg ( rpfd, func, SR017, "find_cartridge", vid, msgaddr);
 		return (c);
-- 
GitLab