Changeset 39566 in vbox for trunk/src/VBox/Devices/Storage/VSCSI
- Timestamp:
- Dec 9, 2011 1:27:31 PM (13 years ago)
- svn:sync-xref-src-repo-rev:
- 75320
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Storage/VSCSI/VSCSILunSbc.cpp
r38878 r39566 260 260 aReply[3] = 0; /* Block descriptor length. */ 261 261 262 if (pVScsiLun->fFeatures & VSCSI_LUN_FEATURE_READONLY) 263 aReply[2] |= RT_BIT(7); /* Set write protect bit */ 264 262 265 pu8ReplyPos = aReply + 4; 263 266 … … 509 512 { 510 513 /* Enqueue new I/O request */ 511 rc = vscsiIoReqTransferEnqueue(pVScsiLun, pVScsiReq, enmTxDir, 512 uLbaStart * 512, cSectorTransfer * 512); 514 if ( ( enmTxDir == VSCSIIOREQTXDIR_WRITE 515 || enmTxDir == VSCSIIOREQTXDIR_FLUSH) 516 && (pVScsiLun->fFeatures & VSCSI_LUN_FEATURE_READONLY)) 517 rcReq = vscsiLunReqSenseErrorSet(pVScsiLun, pVScsiReq, SCSI_SENSE_DATA_PROTECT, SCSI_ASC_WRITE_PROTECTED, 0x00); 518 else 519 rc = vscsiIoReqTransferEnqueue(pVScsiLun, pVScsiReq, enmTxDir, 520 uLbaStart * 512, cSectorTransfer * 512); 513 521 } 514 522 }
Note:
See TracChangeset
for help on using the changeset viewer.