diff --git a/tapeserver/castor/tape/tapeserver/system/FileWrappers.cpp b/tapeserver/castor/tape/tapeserver/system/FileWrappers.cpp
index 95805001ce521752c9d1cd06c4d0be10fdb5fdf5..c159d43cff78100bd9aad6514c6a5a6feda495f4 100644
--- a/tapeserver/castor/tape/tapeserver/system/FileWrappers.cpp
+++ b/tapeserver/castor/tape/tapeserver/system/FileWrappers.cpp
@@ -214,6 +214,20 @@ int System::stDeviceFile::ioctlReadPosition(sg_io_hdr_t* sgio_h) {
   return 0;
 }
 
+int System::stDeviceFile::ioctlRequestSense(sg_io_hdr_t* sgio_h) {
+  if (SG_DXFER_FROM_DEV != sgio_h->dxfer_direction) {
+    errno = EINVAL;
+    return -1;
+  }
+  SCSI::Structures::requestSenseData_t &requestSenseData =
+    *reinterpret_cast<SCSI::Structures::requestSenseData_t*>(sgio_h->dxferp);
+  if(sizeof(requestSenseData) > sgio_h->dxfer_len) {
+    errno = EINVAL;
+    return -1;
+  }
+  return 0;
+}
+
 int System::stDeviceFile::ioctlLogSelect(sg_io_hdr_t * sgio_h) {
   if (SG_DXFER_NONE != sgio_h->dxfer_direction) {
     errno = EINVAL;