From 90387afeafebd32db81fb5f89d3c3a81199a69b8 Mon Sep 17 00:00:00 2001 From: yutaka Date: Mon, 28 Jan 2008 05:13:51 +0000 Subject: [PATCH] =?UTF-8?q?SRL=E5=90=8D=E8=A7=A3=E6=B1=BA=E3=83=AB?= =?UTF-8?q?=E3=83=BC=E3=83=81=E3=83=B3=E3=82=92=E3=82=BB=E3=82=AD=E3=83=A5?= =?UTF-8?q?=E3=82=A2=E7=89=88=E3=81=A8=E3=81=9D=E3=81=86=E3=81=A7=E3=81=AA?= =?UTF-8?q?=E3=81=84=E7=89=88=E3=81=AB=E5=88=86=E9=9B=A2=20=E3=81=A8?= =?UTF-8?q?=E3=82=8A=E3=81=82=E3=81=88=E3=81=9A=E3=82=BB=E3=82=AD=E3=83=A5?= =?UTF-8?q?=E3=82=A2=E7=89=88=E3=82=92=E4=BD=BF=E7=94=A8=E3=81=99=E3=82=8B?= =?UTF-8?q?=E3=81=93=E3=81=A8=E3=81=AB=20(ES=5FInitLib=E3=81=8C=E9=87=8D?= =?UTF-8?q?=E3=81=99=E3=81=8E=E3=82=8B=E3=81=8C)?= 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@527 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- build/libraries/fs/ARM9/src/fs_firm.c | 25 +++++++++++++++++++++++-- include/firm/fs/ARM9/fs_firm.h | 12 ++++++++++++ 2 files changed, 35 insertions(+), 2 deletions(-) diff --git a/build/libraries/fs/ARM9/src/fs_firm.c b/build/libraries/fs/ARM9/src/fs_firm.c index 6d9eb3cc..534b3b66 100644 --- a/build/libraries/fs/ARM9/src/fs_firm.c +++ b/build/libraries/fs/ARM9/src/fs_firm.c @@ -25,7 +25,9 @@ //#define MODULE_ALIGNMENT 0x200 // 512バイト単位で読み込む #define RoundUpModuleSize(value) (((value) + MODULE_ALIGNMENT - 1) & -MODULE_ALIGNMENT) -#define CONTENT_INDEX_SRL 0 +// bootContent を表す特殊な contentIndex +#define CONTENT_INDEX_BOOT 0xFFFF + #define HASH_UNIT 0x1000 static ROM_Header* const rh = (ROM_Header*)HW_TWL_ROM_HEADER_BUF; @@ -114,7 +116,7 @@ void FS_DeleteAesKeySeed( void ) BOOL FS_ResolveSrl( u64 titleId ) { if ( ES_ERR_OK != ES_InitLib() || - !FS_GetTitleBootContentPathFast((char*)HW_TWL_FS_BOOT_SRL_PATH_BUF, titleId) || + ES_ERR_OK != ES_GetContentPath(titleId, CONTENT_INDEX_BOOT, (char*)HW_TWL_FS_BOOT_SRL_PATH_BUF) || ES_ERR_OK != ES_CloseLib() ) { return FALSE; @@ -122,6 +124,25 @@ BOOL FS_ResolveSrl( u64 titleId ) return TRUE; } +/*---------------------------------------------------------------------------* + Name: FS_ResolveSrlUnsecured + + Description: resolve srl filename and store to HW_TWL_FS_BOOT_SRL_PATH_BUF + without almost security check + + Arguments: titleId title id for srl file + + Returns: TRUE if success + *---------------------------------------------------------------------------*/ +BOOL FS_ResolveSrlUnsecured( u64 titleId ) +{ + if ( !FS_GetTitleBootContentPathFast((char*)HW_TWL_FS_BOOT_SRL_PATH_BUF, titleId) ) + { + return FALSE; + } + return TRUE; +} + /*---------------------------------------------------------------------------* Name: FS_SetDigestKey diff --git a/include/firm/fs/ARM9/fs_firm.h b/include/firm/fs/ARM9/fs_firm.h index d7599812..0e72127e 100644 --- a/include/firm/fs/ARM9/fs_firm.h +++ b/include/firm/fs/ARM9/fs_firm.h @@ -68,6 +68,18 @@ void FS_DeleteAesKeySeed( void ); *---------------------------------------------------------------------------*/ BOOL FS_ResolveSrl( u64 titleId ); +/*---------------------------------------------------------------------------* + Name: FS_ResolveSrlUnsecured + + Description: resolve srl filename and store to HW_TWL_FS_BOOT_SRL_PATH_BUF + without almost security check + + Arguments: titleId title id for srl file + + Returns: TRUE if success + *---------------------------------------------------------------------------*/ +BOOL FS_ResolveSrlUnsecured( u64 titleId ); + /*---------------------------------------------------------------------------* Name: FS_SetDigestKey