Changeset 24213 in vbox
- Timestamp:
- Oct 30, 2009 5:51:30 PM (15 years ago)
- svn:sync-xref-src-repo-rev:
- 54161
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Storage/ISCSIHDDCore.cpp
r24178 r24213 490 490 pszFormat, va); 491 491 va_end(va); 492 493 #ifdef LOG_ENABLED 494 va_start(va, pszFormat); 495 Log(("iscsiError(%d/%s): %N\n", iLine, pszFunction, pszFormat, &va)); 496 va_end(va); 497 #endif 492 498 return rc; 493 499 } … … 2596 2602 uint8_t cdb_cap[16]; 2597 2603 2598 memset(cdb_cap, '\0', sizeof(cdb_cap)); 2604 RT_ZERO(data12); 2605 RT_ZERO(cdb_cap); 2599 2606 cdb_cap[0] = SCSI_SERVICE_ACTION_IN_16; 2600 2607 cdb_cap[1] = SCSI_SVC_ACTION_IN_READ_CAPACITY_16; /* subcommand */ 2608 cdb_cap[10+3] = sizeof(data12); /* allocation length (dword) */ 2601 2609 2602 2610 sr.enmXfer = SCSIXFER_FROM_TARGET; … … 2618 2626 pImage->cbSector = RT_BE2H_U32(*(uint32_t *)&data12[8]); 2619 2627 pImage->cbSize = pImage->cVolume * pImage->cbSector; 2620 if (pImage->cVolume == 0 || pImage->cbSector == 0)2628 if (pImage->cVolume == 0 || pImage->cbSector != 512 || pImage->cbSize < pImage->cVolume) 2621 2629 { 2622 2630 rc = iscsiError(pImage, VERR_VD_ISCSI_INVALID_TYPE, 2623 RT_SRC_POS, N_("iSCSI: target address %s, target name %s, SCSI LUN %lld reports media sector count=%l u sector size=%lu"),2631 RT_SRC_POS, N_("iSCSI: target address %s, target name %s, SCSI LUN %lld reports media sector count=%llu sector size=%u"), 2624 2632 pImage->pszTargetAddress, pImage->pszTargetName, 2625 2633 pImage->LUN, pImage->cVolume, pImage->cbSector); … … 2630 2638 uint8_t cdb_capfb[10]; 2631 2639 2640 RT_ZERO(data8); 2632 2641 cdb_capfb[0] = SCSI_READ_CAPACITY; 2633 2642 cdb_capfb[1] = 0; /* reserved */ … … 2658 2667 pImage->cbSector = (data8[4] << 24) | (data8[5] << 16) | (data8[6] << 8) | data8[7]; 2659 2668 pImage->cbSize = pImage->cVolume * pImage->cbSector; 2660 if (pImage->cVolume == 0 || pImage->cbSector == 0)2669 if (pImage->cVolume == 0 || pImage->cbSector != 512) 2661 2670 { 2662 2671 rc = iscsiError(pImage, VERR_VD_ISCSI_INVALID_TYPE, 2663 RT_SRC_POS, N_("iSCSI: fallback capacity detectio for target address %s, target name %s, SCSI LUN %lld reports media sector count=%l u sector size=%lu"),2672 RT_SRC_POS, N_("iSCSI: fallback capacity detectio for target address %s, target name %s, SCSI LUN %lld reports media sector count=%llu sector size=%u"), 2664 2673 pImage->pszTargetAddress, pImage->pszTargetName, 2665 2674 pImage->LUN, pImage->cVolume, pImage->cbSector);
Note:
See TracChangeset
for help on using the changeset viewer.