void nsPKCS11Slot::refreshSlotInfo() { CK_SLOT_INFO slot_info; if (PK11_GetSlotInfo(mSlot, &slot_info) == SECSuccess) { // Set the Description field const char *ccDesc = (const char*)slot_info.slotDescription; const nsACString &cDesc = Substring( ccDesc, ccDesc+PL_strnlen(ccDesc, sizeof(slot_info.slotDescription))); mSlotDesc = NS_ConvertUTF8toUTF16(cDesc); mSlotDesc.Trim(" ", false, true); // Set the Manufacturer field const char *ccManID = (const char*)slot_info.manufacturerID; const nsACString &cManID = Substring( ccManID, ccManID+PL_strnlen(ccManID, sizeof(slot_info.manufacturerID))); mSlotManID = NS_ConvertUTF8toUTF16(cManID); mSlotManID.Trim(" ", false, true); // Set the Hardware Version field mSlotHWVersion = EmptyString(); mSlotHWVersion.AppendInt(slot_info.hardwareVersion.major); mSlotHWVersion.Append('.'); mSlotHWVersion.AppendInt(slot_info.hardwareVersion.minor); // Set the Firmware Version field mSlotFWVersion = EmptyString(); mSlotFWVersion.AppendInt(slot_info.firmwareVersion.major); mSlotFWVersion.Append('.'); mSlotFWVersion.AppendInt(slot_info.firmwareVersion.minor); } }
void nsPK11Token::refreshTokenInfo() { mTokenName = NS_ConvertUTF8toUTF16(PK11_GetTokenName(mSlot)); SECStatus srv; CK_TOKEN_INFO tok_info; srv = PK11_GetTokenInfo(mSlot, &tok_info); if (srv == SECSuccess) { // Set the Label field const char *ccLabel = (const char*)tok_info.label; const nsACString &cLabel = Substring( ccLabel, ccLabel+PL_strnlen(ccLabel, sizeof(tok_info.label))); mTokenLabel = NS_ConvertUTF8toUTF16(cLabel); mTokenLabel.Trim(" ", false, true); // Set the Manufacturer field const char *ccManID = (const char*)tok_info.manufacturerID; const nsACString &cManID = Substring( ccManID, ccManID+PL_strnlen(ccManID, sizeof(tok_info.manufacturerID))); mTokenManID = NS_ConvertUTF8toUTF16(cManID); mTokenManID.Trim(" ", false, true); // Set the Hardware Version field mTokenHWVersion.AppendInt(tok_info.hardwareVersion.major); mTokenHWVersion.Append('.'); mTokenHWVersion.AppendInt(tok_info.hardwareVersion.minor); // Set the Firmware Version field mTokenFWVersion.AppendInt(tok_info.firmwareVersion.major); mTokenFWVersion.Append('.'); mTokenFWVersion.AppendInt(tok_info.firmwareVersion.minor); // Set the Serial Number field const char *ccSerial = (const char*)tok_info.serialNumber; const nsACString &cSerial = Substring( ccSerial, ccSerial+PL_strnlen(ccSerial, sizeof(tok_info.serialNumber))); mTokenSerialNum = NS_ConvertUTF8toUTF16(cSerial); mTokenSerialNum.Trim(" ", false, true); } }