mirror of
https://github.com/moibenko/mtx.git
synced 2025-12-23 05:55:13 +00:00
Added product id to Status() output
This commit is contained in:
BIN
mtx-1.3.12.tgz
BIN
mtx-1.3.12.tgz
Binary file not shown.
@@ -502,12 +502,13 @@ static void Status(void)
|
||||
printf("Data Transfer Element %d:", TransferElementNumber);
|
||||
}
|
||||
else {
|
||||
//printf("SSSSSNNNNN %s\n", ElementStatus->DataTransferElementSerialNumber[TransferElementNumber]);
|
||||
printf("Data Transfer Element %d ", ElementStatus->DataTransferElementAddress[TransferElementNumber]);
|
||||
phys_loc = (PhysicalLocation_T *) &ElementStatus->DataTransferElementPhysicalLocation[TransferElementNumber];
|
||||
printf("Phys Loc F%u,C%u,R%u,Z%u SN%s:",
|
||||
printf("Phys Loc F%u,C%u,R%u,Z%u SN%s ID %s:",
|
||||
phys_loc->frame, phys_loc->column, phys_loc->row, phys_loc->zone,
|
||||
ElementStatus->DataTransferElementSerialNumber[TransferElementNumber]);
|
||||
ElementStatus->DataTransferElementSerialNumber[TransferElementNumber],
|
||||
ElementStatus->DataTransferElementProductId[TransferElementNumber]
|
||||
);
|
||||
}
|
||||
if (ElementStatus->DataTransferElementFull[TransferElementNumber])
|
||||
{
|
||||
|
||||
@@ -575,6 +575,7 @@ typedef struct ElementStatus {
|
||||
int *DataTransferElementAddress; /* array. */
|
||||
int *DataTransferElementSourceStorageElementNumber; /* array */
|
||||
int *DataTransferElementPhysicalLocation; /*array */
|
||||
serialnumber *DataTransferElementProductId; /*array */
|
||||
serialnumber *DataTransferElementSerialNumber; /*array */
|
||||
barcode *StorageElementPhysicalLocation; /*array */
|
||||
barcode *DataTransferPrimaryVolumeTag; /* array. */
|
||||
|
||||
@@ -528,6 +528,7 @@ static void FreeElementData(ElementStatus_T *data)
|
||||
free(data->DataTransferElementAddress);
|
||||
free(data->DataTransferElementSourceStorageElementNumber);
|
||||
free(data->DataTransferElementPhysicalLocation);
|
||||
free(data->DataTransferElementProductId);
|
||||
free(data->DataTransferElementSerialNumber);
|
||||
free(data->StorageElementPhysicalLocation);
|
||||
free(data->DataTransferPrimaryVolumeTag);
|
||||
@@ -557,6 +558,8 @@ static ElementStatus_T *AllocateElementData(ElementModeSense_T *mode_sense)
|
||||
(int *)xzmalloc(sizeof(int) * (mode_sense->NumDataTransfer + 1));
|
||||
retval->DataTransferElementPhysicalLocation =
|
||||
(int *)xzmalloc(sizeof(int) * (mode_sense->NumDataTransfer + 1));
|
||||
retval->DataTransferElementProductId =
|
||||
(serialnumber *)xzmalloc(sizeof(serialnumber) * (mode_sense->NumDataTransfer + 1));
|
||||
retval->DataTransferElementSerialNumber =
|
||||
(serialnumber *)xzmalloc(sizeof(serialnumber) * (mode_sense->NumDataTransfer + 1));
|
||||
retval->StorageElementPhysicalLocation =
|
||||
@@ -608,13 +611,13 @@ void copy_physical_location(unsigned char *src, unsigned char *dest)
|
||||
strcpy((char *)dest, (char *)src);
|
||||
}
|
||||
|
||||
void copy_serial_number(unsigned char *src, unsigned char *dest)
|
||||
void copy_char_buffer(unsigned char *src, unsigned char *dest, int num)
|
||||
{
|
||||
int i;
|
||||
while ((*src< 32) || (*src > 127)) {
|
||||
src++;
|
||||
}
|
||||
for (i=0; i < 12; i++)
|
||||
for (i=0; i < num; i++)
|
||||
{
|
||||
*dest = *src++;
|
||||
|
||||
@@ -1096,7 +1099,8 @@ static void ParseElementStatus( int *EmptyStorageElementAddress,
|
||||
BigEndian16(TransportElementDescriptor->SourceStorageElementAddress);
|
||||
InquiryShort_T *inqs;
|
||||
inqs = (InquiryShort_T *) TransportElementDescriptor->PrimaryVolumeTag;
|
||||
copy_serial_number(inqs->SerialNumber, ElementStatus->DataTransferElementSerialNumber[ElementStatus->DataTransferElementCount]);
|
||||
copy_char_buffer(inqs->SerialNumber, ElementStatus->DataTransferElementSerialNumber[ElementStatus->DataTransferElementCount], 12);
|
||||
copy_char_buffer(inqs->ProductIdentification+2, ElementStatus->DataTransferElementProductId[ElementStatus->DataTransferElementCount], 12);
|
||||
ElementStatus->DataTransferElementCount++;
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user