Personalized eTicketでプリインストールタイトルのリストアップできるように

git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_Repair@628 385bec56-5757-e545-9c3a-d8741f4650f1
This commit is contained in:
N2614 2012-02-13 06:42:38 +00:00
parent 9eb0ef4b18
commit 1e574d06a6
3 changed files with 39 additions and 0 deletions

View File

@ -74,6 +74,24 @@ nn::Result PreinstallImporter::ListTitles(nn::ProgramId* list, size_t* num, bit6
return nn::ResultSuccess();
}
nn::Result PreinstallImporter::ListTitlesBasedOnTickets(nn::ProgramId* list, size_t* num)
{
s32 personalizedTicketNum;
nn::am::TicketInfo ticketInfo[256];
NN_UTIL_RETURN_IF_FAILED(
nn::am::GetPersonalizedTicketInfoList(&personalizedTicketNum, ticketInfo, 256)
);
*num = 0;
for(s32 i = 0; i < personalizedTicketNum; i++)
{
list[*num] = ticketInfo[i].titleId;
(*num)++;
}
return nn::ResultSuccess();
}
nn::Result PreinstallImporter::GetHtmlBodyAndParseXmlData(BgsCommunicator& comm, nn::ProgramId* list, size_t* num)
{
// 通信結果を取得する

View File

@ -40,6 +40,9 @@ public:
//! @param[in] serialNo シリアルナンバー
nn::Result ListTitles(nn::ProgramId* list, size_t* num, bit64 deviceId, u8* serialNo);
//!@ brief プリインストールタイトルをeTicketに基づいてリストアップする
nn::Result ListTitlesBasedOnTickets(nn::ProgramId* list, size_t* num);
private:
//! @brief HTMLレスポンスを受信してXMLデータを解析します
nn::Result GetHtmlBodyAndParseXmlData(BgsCommunicator& comm, nn::ProgramId* list, size_t* num);

View File

@ -41,10 +41,12 @@ public:
PreinstallImporterTest() {
TEST_ADD(PreinstallImporterTest::ListUp);
TEST_ADD(PreinstallImporterTest::SetupSd);
TEST_ADD(PreinstallImporterTest::ListUpBasedOnTicket);
}
private:
void ListUp();
void SetupSd();
void ListUpBasedOnTicket();
};
namespace
@ -131,6 +133,22 @@ void PreinstallImporterTest::SetupSd()
NN_TEST_ASSERT(isAlreadyInitialized);
}
void PreinstallImporterTest::ListUpBasedOnTicket()
{
ConsoleRestore::PreinstallImporter importer;
size_t num;
nn::ProgramId list[256];
nn::Result result;
result = importer.ListTitlesBasedOnTickets(list, &num);
NN_LOG("Preinstalled num = %d\n", num);
for (u32 i = 0; i < num; i++)
{
NN_LOG("%016llx\n", list[i]);
}
}
NN_TEST_DEFINE_MAIN(PreinstallImporterTest)
/*---------------------------------------------------------------------------*