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);
|
printf("Data Transfer Element %d:", TransferElementNumber);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
//printf("SSSSSNNNNN %s\n", ElementStatus->DataTransferElementSerialNumber[TransferElementNumber]);
|
|
||||||
printf("Data Transfer Element %d ", ElementStatus->DataTransferElementAddress[TransferElementNumber]);
|
printf("Data Transfer Element %d ", ElementStatus->DataTransferElementAddress[TransferElementNumber]);
|
||||||
phys_loc = (PhysicalLocation_T *) &ElementStatus->DataTransferElementPhysicalLocation[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,
|
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])
|
if (ElementStatus->DataTransferElementFull[TransferElementNumber])
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -575,6 +575,7 @@ typedef struct ElementStatus {
|
|||||||
int *DataTransferElementAddress; /* array. */
|
int *DataTransferElementAddress; /* array. */
|
||||||
int *DataTransferElementSourceStorageElementNumber; /* array */
|
int *DataTransferElementSourceStorageElementNumber; /* array */
|
||||||
int *DataTransferElementPhysicalLocation; /*array */
|
int *DataTransferElementPhysicalLocation; /*array */
|
||||||
|
serialnumber *DataTransferElementProductId; /*array */
|
||||||
serialnumber *DataTransferElementSerialNumber; /*array */
|
serialnumber *DataTransferElementSerialNumber; /*array */
|
||||||
barcode *StorageElementPhysicalLocation; /*array */
|
barcode *StorageElementPhysicalLocation; /*array */
|
||||||
barcode *DataTransferPrimaryVolumeTag; /* array. */
|
barcode *DataTransferPrimaryVolumeTag; /* array. */
|
||||||
|
|||||||
@@ -528,6 +528,7 @@ static void FreeElementData(ElementStatus_T *data)
|
|||||||
free(data->DataTransferElementAddress);
|
free(data->DataTransferElementAddress);
|
||||||
free(data->DataTransferElementSourceStorageElementNumber);
|
free(data->DataTransferElementSourceStorageElementNumber);
|
||||||
free(data->DataTransferElementPhysicalLocation);
|
free(data->DataTransferElementPhysicalLocation);
|
||||||
|
free(data->DataTransferElementProductId);
|
||||||
free(data->DataTransferElementSerialNumber);
|
free(data->DataTransferElementSerialNumber);
|
||||||
free(data->StorageElementPhysicalLocation);
|
free(data->StorageElementPhysicalLocation);
|
||||||
free(data->DataTransferPrimaryVolumeTag);
|
free(data->DataTransferPrimaryVolumeTag);
|
||||||
@@ -557,6 +558,8 @@ static ElementStatus_T *AllocateElementData(ElementModeSense_T *mode_sense)
|
|||||||
(int *)xzmalloc(sizeof(int) * (mode_sense->NumDataTransfer + 1));
|
(int *)xzmalloc(sizeof(int) * (mode_sense->NumDataTransfer + 1));
|
||||||
retval->DataTransferElementPhysicalLocation =
|
retval->DataTransferElementPhysicalLocation =
|
||||||
(int *)xzmalloc(sizeof(int) * (mode_sense->NumDataTransfer + 1));
|
(int *)xzmalloc(sizeof(int) * (mode_sense->NumDataTransfer + 1));
|
||||||
|
retval->DataTransferElementProductId =
|
||||||
|
(serialnumber *)xzmalloc(sizeof(serialnumber) * (mode_sense->NumDataTransfer + 1));
|
||||||
retval->DataTransferElementSerialNumber =
|
retval->DataTransferElementSerialNumber =
|
||||||
(serialnumber *)xzmalloc(sizeof(serialnumber) * (mode_sense->NumDataTransfer + 1));
|
(serialnumber *)xzmalloc(sizeof(serialnumber) * (mode_sense->NumDataTransfer + 1));
|
||||||
retval->StorageElementPhysicalLocation =
|
retval->StorageElementPhysicalLocation =
|
||||||
@@ -608,13 +611,13 @@ void copy_physical_location(unsigned char *src, unsigned char *dest)
|
|||||||
strcpy((char *)dest, (char *)src);
|
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;
|
int i;
|
||||||
while ((*src< 32) || (*src > 127)) {
|
while ((*src< 32) || (*src > 127)) {
|
||||||
src++;
|
src++;
|
||||||
}
|
}
|
||||||
for (i=0; i < 12; i++)
|
for (i=0; i < num; i++)
|
||||||
{
|
{
|
||||||
*dest = *src++;
|
*dest = *src++;
|
||||||
|
|
||||||
@@ -1096,7 +1099,8 @@ static void ParseElementStatus( int *EmptyStorageElementAddress,
|
|||||||
BigEndian16(TransportElementDescriptor->SourceStorageElementAddress);
|
BigEndian16(TransportElementDescriptor->SourceStorageElementAddress);
|
||||||
InquiryShort_T *inqs;
|
InquiryShort_T *inqs;
|
||||||
inqs = (InquiryShort_T *) TransportElementDescriptor->PrimaryVolumeTag;
|
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++;
|
ElementStatus->DataTransferElementCount++;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user