mirror of
https://github.com/rvtr/ctr_Repair.git
synced 2025-10-31 13:51:08 -04:00
シリアルNo.ファイルが存在する場合はリストア時に一致しているかチェックするように
git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_Repair@719 385bec56-5757-e545-9c3a-d8741f4650f1
This commit is contained in:
parent
dc1d45e0ef
commit
432b756ce5
@ -226,6 +226,7 @@ void CheckSdInserted(common::HardwareStateManager& manager, common::OperationMes
|
||||
void CheckAcAdapter(common::HardwareStateManager& manager, common::OperationMessage& message, bool& goNextStep);
|
||||
void CheckSdWritable(common::HardwareStateManager& manager, common::OperationMessage& message, bool& goNextStep);
|
||||
void CheckApSetting(common::HardwareStateManager& manager, common::OperationMessage& message, bool& goNextStep);
|
||||
void CheckSerialNumber(common::HardwareStateManager& manager, common::OperationMessage& message, bool& goNextStep);
|
||||
void CheckNupExecuted(common::HardwareStateManager& manager, common::OperationMessage& message, bool& goNextStep);
|
||||
void CheckDownloadIvs(common::HardwareStateManager& manager, common::OperationMessage& message, bool& goNextStep);
|
||||
void CheckAccountDeleted(common::HardwareStateManager& manager, common::OperationMessage& message, bool& goNextStep);
|
||||
@ -286,12 +287,9 @@ void CheckSdWritable(common::HardwareStateManager& manager, common::OperationMes
|
||||
// 設定ファイル書式チェック
|
||||
void CheckApSetting(common::HardwareStateManager& manager, common::OperationMessage& message, bool& goNextStep)
|
||||
{
|
||||
NN_UNUSED_VAR(manager);
|
||||
NN_UNUSED_VAR(goNextStep);
|
||||
|
||||
if (CheckAndReadAPSetting(message))
|
||||
{
|
||||
s_RestoreState = IMPORT_RTC;
|
||||
CheckSerialNumber(manager, message, goNextStep);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -299,6 +297,43 @@ void CheckApSetting(common::HardwareStateManager& manager, common::OperationMess
|
||||
}
|
||||
}
|
||||
|
||||
// シリアルNo.が一致しているかどうかチェック
|
||||
void CheckSerialNumber(common::HardwareStateManager& manager, common::OperationMessage& message, bool& goNextStep)
|
||||
{
|
||||
NN_UNUSED_VAR(message);
|
||||
NN_UNUSED_VAR(goNextStep);
|
||||
|
||||
// SDカードにシリアルナンバーがあるか?
|
||||
if (!common::ExistsSerialNumberFile())
|
||||
{
|
||||
s_RestoreState = IMPORT_RTC;
|
||||
return;
|
||||
}
|
||||
|
||||
u8 serialInSd[nn::cfg::CTR::CFG_SECURE_INFO_SERIAL_NO_LEN];
|
||||
nn::Result result = ReadSerialNumber(serialInSd);
|
||||
if (result.IsFailure())
|
||||
{
|
||||
s_RestoreState = FAIL;
|
||||
return;
|
||||
}
|
||||
|
||||
u8* serial;
|
||||
size_t size;
|
||||
manager.GetSerialNumber(&serial, &size);
|
||||
|
||||
if(std::memcmp(serialInSd, serial, size) == 0)
|
||||
{
|
||||
s_RestoreState = IMPORT_RTC;
|
||||
}
|
||||
else
|
||||
{
|
||||
COMMON_LOGGER("Mismatched Serial Number!!");
|
||||
s_RestoreState = FAIL;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// NUP済みかどうかチェック
|
||||
void CheckNupExecuted(common::HardwareStateManager& manager, common::OperationMessage& message, bool& goNextStep)
|
||||
{
|
||||
|
||||
Loading…
Reference in New Issue
Block a user