From bfd0df1306083fe2997eafe094fcc960e97a975e Mon Sep 17 00:00:00 2001 From: yoshida_teruhisa Date: Tue, 20 May 2008 08:10:40 +0000 Subject: [PATCH] =?UTF-8?q?=E3=83=87=E3=83=90=E3=83=83=E3=82=AC=E6=9C=89?= =?UTF-8?q?=E5=8A=B9=E3=81=A7TLF=E3=82=92=E8=AA=AD=E3=81=BF=E8=BE=BC?= =?UTF-8?q?=E3=82=93=E3=81=A7=E3=81=84=E3=82=8B=E6=99=82=E3=81=AF=E7=BD=B2?= =?UTF-8?q?=E5=90=8D=E6=9C=89=E5=8A=B9=E3=83=95=E3=83=A9=E3=82=B0=E3=82=92?= =?UTF-8?q?=E7=84=A1=E8=A6=96=E3=81=99=E3=82=8B=E3=82=88=E3=81=86=E5=A4=89?= =?UTF-8?q?=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1423 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- .../sysmenu/ARM9/src/title.c | 34 +++++++++---------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/build/libraries_sysmenu/sysmenu/ARM9/src/title.c b/build/libraries_sysmenu/sysmenu/ARM9/src/title.c index 97abb012..ba85fcca 100644 --- a/build/libraries_sysmenu/sysmenu/ARM9/src/title.c +++ b/build/libraries_sysmenu/sysmenu/ARM9/src/title.c @@ -817,20 +817,6 @@ static AuthResult SYSMi_AuthenticateHeaderWithSign( TitleProperty *pBootTitle, R OSTick start,prev; start = OS_GetTick(); - // pBootTitle->titleIDとROMヘッダのtitleIDの一致確認をする。 - // [TODO:]ホワイトリストマスタリングされたNTRアプリで行わない場合はSYSMi_AuthenticateTWLHeaderへ移動 - if( pBootTitle->titleID != head->s.titleID ) - { - //TWL対応ROMで、ヘッダのtitleIDが起動指定されたIDと違う - OS_TPrintf( "Authenticate_Header failed: header TitleID error\n" ); - OS_TPrintf( "Authenticate_Header failed: selectedTitleID=%.16llx\n", pBootTitle->titleID ); - OS_TPrintf( "Authenticate_Header failed: headerTitleID=%.16llx\n", head->s.titleID ); - return AUTH_RESULT_AUTHENTICATE_FAILED; - }else - { - OS_TPrintf( "Authenticate_Header : header TitleID check succeed.\n" ); - } - prev = OS_GetTick(); hi = head->s.titleID_Hi; // Launcherは専用の鍵を使う @@ -911,13 +897,27 @@ static AuthResult SYSMi_AuthenticateHeaderWithSign( TitleProperty *pBootTitle, R // TWLアプリ、NTR拡張NANDアプリ 共通のヘッダ認証処理 static AuthResult SYSMi_AuthenticateTWLHeader( TitleProperty *pBootTitle, ROM_Header *head ) { - if( head->s.enable_signature ) + // pBootTitle->titleIDとROMヘッダのtitleIDの一致確認をする。 + // ホワイトリストマスタリングされたNTRアプリでも行う場合はSYSMi_AuthenticateTWLHeaderへ移動 + if( pBootTitle->titleID != head->s.titleID ) + { + //TWL対応ROMで、ヘッダのtitleIDが起動指定されたIDと違う + OS_TPrintf( "Authenticate_Header failed: header TitleID error\n" ); + OS_TPrintf( "Authenticate_Header failed: selectedTitleID=%.16llx\n", pBootTitle->titleID ); + OS_TPrintf( "Authenticate_Header failed: headerTitleID=%.16llx\n", head->s.titleID ); + return AUTH_RESULT_AUTHENTICATE_FAILED; + }else + { + OS_TPrintf( "Authenticate_Header : header TitleID check succeed.\n" ); + } + + if( head->s.enable_signature || (SYSMi_GetWork()->flags.hotsw.isOnDebugger && SYSMi_GetWork()->romEmuInfo.isTlfRom)) { return SYSMi_AuthenticateHeaderWithSign( pBootTitle, head ); }else { - // 署名有効フラグが立っていなければFAILED - OS_TPrintf("Authenticate_Header failed: Sign check flag is OFF.\n"); + // 署名有効フラグが立っていない 且つ デバッガが有効でTLFを読み込んでいるのでなければFAILED + OS_TPrintf("Authenticate_Header failed: Sign check flag is OFF!\n"); return AUTH_RESULT_AUTHENTICATE_FAILED; } }