mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
SDK rev.7025対応。
HWID署名を2048bitに変更したことに対応。 署名にacsignライブラリを使わず、SDKのcryptoライブラリを使用するように変更。 git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1792 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
c45fa3c09e
commit
4731b2fe39
@ -47,10 +47,6 @@ SRCS = main.c HWInfoWriter.c hwi.c \
|
|||||||
LINCLUDES = $(MISC_DIR)/include \
|
LINCLUDES = $(MISC_DIR)/include \
|
||||||
$(ROOT)/build/libraries/lcfg/ARM9.TWL/include
|
$(ROOT)/build/libraries/lcfg/ARM9.TWL/include
|
||||||
|
|
||||||
SYSMENU_LIBS = \
|
|
||||||
libacsign$(TWL_LIBSUFFIX).a \
|
|
||||||
libacsign_enc$(TWL_LIBSUFFIX).a \
|
|
||||||
|
|
||||||
SDK_APPEND_LIBS = \
|
SDK_APPEND_LIBS = \
|
||||||
liblcfg$(TWL_LIBSUFFIX).a
|
liblcfg$(TWL_LIBSUFFIX).a
|
||||||
|
|
||||||
@ -69,9 +65,11 @@ include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
|
|||||||
|
|
||||||
ifneq ($(TWL_IPL_RED_PRIVATE_ROOT),)
|
ifneq ($(TWL_IPL_RED_PRIVATE_ROOT),)
|
||||||
ifdef FIRM_USE_PRODUCT_KEYS
|
ifdef FIRM_USE_PRODUCT_KEYS
|
||||||
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo.der'
|
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo.der' \
|
||||||
|
-DHWID_PRIVKEY='private_HWID.der'
|
||||||
else
|
else
|
||||||
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo_dev.der'
|
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo_dev.der' \
|
||||||
|
-DHWID_PRIVKEY='private_HWID_dev.der'
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -82,8 +80,6 @@ MAKETAD_FLAGS += -s
|
|||||||
|
|
||||||
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
|
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
|
||||||
|
|
||||||
GLIBRARIES := $(filter-out libcrypto$(TWL_LIBSUFFIX).a,$(GLIBRARIES))
|
|
||||||
|
|
||||||
#LDIRT_CLEAN =
|
#LDIRT_CLEAN =
|
||||||
#INSTALL_TARGETS =
|
#INSTALL_TARGETS =
|
||||||
INSTALL_DIR = $(SDK_NMENU_DATADIR)
|
INSTALL_DIR = $(SDK_NMENU_DATADIR)
|
||||||
|
|||||||
@ -202,5 +202,5 @@ RomSpec
|
|||||||
File *.*
|
File *.*
|
||||||
HostRoot $(PRIVKEY_PATH)
|
HostRoot $(PRIVKEY_PATH)
|
||||||
Root /key
|
Root /key
|
||||||
File $(HWINFO_PRIVKEY)
|
File $(HWINFO_PRIVKEY) $(HWID_PRIVKEY)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -16,6 +16,7 @@
|
|||||||
*---------------------------------------------------------------------------*/
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include <twl.h>
|
#include <twl.h>
|
||||||
|
#include <nitro/crypto.h>
|
||||||
#include <sysmenu.h>
|
#include <sysmenu.h>
|
||||||
#include <sysmenu/acsign.h>
|
#include <sysmenu/acsign.h>
|
||||||
#include <sysmenu/namut.h>
|
#include <sysmenu/namut.h>
|
||||||
@ -26,8 +27,10 @@
|
|||||||
// define data------------------------------------------
|
// define data------------------------------------------
|
||||||
#ifdef FIRM_USE_PRODUCT_KEYS // 鍵選択スイッチ
|
#ifdef FIRM_USE_PRODUCT_KEYS // 鍵選択スイッチ
|
||||||
#define HWINFO_PRIVKEY_PATH "rom:key/private_HWInfo.der" // 製品用秘密鍵
|
#define HWINFO_PRIVKEY_PATH "rom:key/private_HWInfo.der" // 製品用秘密鍵
|
||||||
|
#define HWID_PRIVKEY_PATH "rom:key/private_HWID.der"
|
||||||
#else
|
#else
|
||||||
#define HWINFO_PRIVKEY_PATH "rom:key/private_HWInfo_dev.der" // 開発用秘密鍵
|
#define HWINFO_PRIVKEY_PATH "rom:key/private_HWInfo_dev.der" // 開発用秘密鍵
|
||||||
|
#define HWID_PRIVKEY_PATH "rom:key/private_HWID_dev.der"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// extern data------------------------------------------
|
// extern data------------------------------------------
|
||||||
@ -37,9 +40,10 @@ const LCFGTWLHWNormalInfo *LCFG_THW_GetNormalInfo( void );
|
|||||||
const LCFGTWLHWSecureInfo *LCFG_THW_GetSecureInfo( void );
|
const LCFGTWLHWSecureInfo *LCFG_THW_GetSecureInfo( void );
|
||||||
|
|
||||||
// function's prototype declaration---------------------
|
// function's prototype declaration---------------------
|
||||||
static HwiInitResult ReadPrivateKey( void );
|
static HwiInitResult ReadPrivateKey( void **ppBuffer, u32 *pKeyFileLen, char *pPath );
|
||||||
static void VerifyHWInfo( void );
|
static void VerifyHWInfo( void );
|
||||||
static BOOL VerifyData( const u8 *pTgt, const u8 *pOrg, u32 len );
|
static BOOL VerifyData( const u8 *pTgt, const u8 *pOrg, u32 len );
|
||||||
|
static BOOL CheckHWID_Signature( BOOL isPrintf );
|
||||||
static BOOL ReadHWInfoFile( void );
|
static BOOL ReadHWInfoFile( void );
|
||||||
static BOOL ReadTWLSettings( void );
|
static BOOL ReadTWLSettings( void );
|
||||||
static u8 HWIi_CalcCheckCode(u8 src[8]);
|
static u8 HWIi_CalcCheckCode(u8 src[8]);
|
||||||
@ -47,7 +51,10 @@ static u8 HWIi_CalcCheckCode(u8 src[8]);
|
|||||||
// global variable -------------------------------------
|
// global variable -------------------------------------
|
||||||
|
|
||||||
// static variable -------------------------------------
|
// static variable -------------------------------------
|
||||||
static u8 *s_pPrivKeyBuffer = NULL;
|
static void *s_pPrivKeyBuffer = NULL;
|
||||||
|
static void *s_pPrivKeyBufferHWID = NULL;
|
||||||
|
static u32 s_privKeyBufferLen;
|
||||||
|
static u32 s_privKeyBufferLenHWID;
|
||||||
static void *(*spAlloc)( u32 length );
|
static void *(*spAlloc)( u32 length );
|
||||||
static void (*spFree)( void *ptr );
|
static void (*spFree)( void *ptr );
|
||||||
|
|
||||||
@ -111,20 +118,16 @@ HwiInitResult HWI_Init( void *(*pAlloc)( u32 ), void (*pFree)( void * ) )
|
|||||||
spAlloc = pAlloc;
|
spAlloc = pAlloc;
|
||||||
spFree = pFree;
|
spFree = pFree;
|
||||||
|
|
||||||
ACSign_SetAllocFunc( pAlloc, pFree );
|
CRYPTO_SetMemAllocator( pAlloc, pFree, NULL );
|
||||||
result = ReadPrivateKey();
|
|
||||||
|
result = ReadPrivateKey( &s_pPrivKeyBuffer, &s_privKeyBufferLen, HWINFO_PRIVKEY_PATH );
|
||||||
|
if( result != HWI_INIT_SUCCESS_NO_SIGNATRUE_MODE ) {
|
||||||
|
result = ReadPrivateKey( &s_pPrivKeyBufferHWID, &s_privKeyBufferLenHWID, HWID_PRIVKEY_PATH );
|
||||||
|
}
|
||||||
ReadHWInfoFile();
|
ReadHWInfoFile();
|
||||||
// VerifyHWInfo();
|
// VerifyHWInfo();
|
||||||
if( 1 ) {
|
(void)CheckHWID_Signature( TRUE );
|
||||||
u8 sign[ RSA_KEY_LENGTH ];
|
|
||||||
if( !LCFG_ReadHWID_Signature( sign ) ||
|
|
||||||
!LCFG_CheckHWID_Signature( sign )
|
|
||||||
) {
|
|
||||||
OS_TPrintf( "HWID Signature check failed.\n" );
|
|
||||||
}else {
|
|
||||||
OS_TPrintf( "HWID Signature check succeeded.\n" );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// ※LanguageBitmapを判定で使用するので、必ずReadHWInfoの後で実行する必要がある。
|
// ※LanguageBitmapを判定で使用するので、必ずReadHWInfoの後で実行する必要がある。
|
||||||
ReadTWLSettings();
|
ReadTWLSettings();
|
||||||
|
|
||||||
@ -157,24 +160,23 @@ static BOOL ReadTWLSettings( void )
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 秘密鍵のリード
|
// 秘密鍵のリード
|
||||||
HwiInitResult ReadPrivateKey( void )
|
static HwiInitResult ReadPrivateKey( void **ppBuffer, u32 *pKeyFileLen, char *pPath )
|
||||||
{
|
{
|
||||||
BOOL result = FALSE;
|
BOOL result = FALSE;
|
||||||
u32 keyLength;
|
|
||||||
FSFile file;
|
FSFile file;
|
||||||
OSTick start = OS_GetTick();
|
OSTick start = OS_GetTick();
|
||||||
|
|
||||||
FS_InitFile( &file );
|
FS_InitFile( &file );
|
||||||
if( !FS_OpenFileEx( &file, HWINFO_PRIVKEY_PATH, FS_FILEMODE_R ) )
|
if( !FS_OpenFileEx( &file, pPath, FS_FILEMODE_R ) )
|
||||||
{
|
{
|
||||||
OS_TPrintf( "PrivateKey read failed.\n" );
|
OS_TPrintf( "PrivateKey read failed.\n" );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
keyLength = FS_GetFileLength( &file );
|
*pKeyFileLen = FS_GetFileLength( &file );
|
||||||
if( keyLength > 0 ) {
|
if( *pKeyFileLen > 0 ) {
|
||||||
s_pPrivKeyBuffer = spAlloc( keyLength );
|
*ppBuffer = spAlloc( *pKeyFileLen );
|
||||||
if( FS_ReadFile( &file, s_pPrivKeyBuffer, (s32)keyLength ) == keyLength ) {
|
if( FS_ReadFile( &file, *ppBuffer, (s32)*pKeyFileLen ) == *pKeyFileLen ) {
|
||||||
OS_TPrintf( "PrivateKey read succeeded.\n" );
|
OS_TPrintf( "PrivateKey read succeeded.\n" );
|
||||||
result = TRUE;
|
result = TRUE;
|
||||||
}else {
|
}else {
|
||||||
@ -184,9 +186,9 @@ HwiInitResult ReadPrivateKey( void )
|
|||||||
FS_CloseFile( &file );
|
FS_CloseFile( &file );
|
||||||
}
|
}
|
||||||
|
|
||||||
if( !result && s_pPrivKeyBuffer ) {
|
if( !result && *ppBuffer ) {
|
||||||
spFree( s_pPrivKeyBuffer );
|
spFree( *ppBuffer );
|
||||||
s_pPrivKeyBuffer = NULL;
|
*ppBuffer = NULL;
|
||||||
}
|
}
|
||||||
// OS_TPrintf( "PrivKey read time = %dms\n", OS_TicksToMilliSeconds( OS_GetTick() - start ) );
|
// OS_TPrintf( "PrivKey read time = %dms\n", OS_TicksToMilliSeconds( OS_GetTick() - start ) );
|
||||||
|
|
||||||
@ -241,6 +243,7 @@ static void VerifyHWInfo( void )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// メモリ上のデータベリファイ
|
// メモリ上のデータベリファイ
|
||||||
static BOOL VerifyData( const u8 *pTgt, const u8 *pOrg, u32 len )
|
static BOOL VerifyData( const u8 *pTgt, const u8 *pOrg, u32 len )
|
||||||
{
|
{
|
||||||
@ -252,6 +255,23 @@ static BOOL VerifyData( const u8 *pTgt, const u8 *pOrg, u32 len )
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// HWID<49><44>–¼‚ÌŠm”F
|
||||||
|
static BOOL CheckHWID_Signature( BOOL isPrintf )
|
||||||
|
{
|
||||||
|
u8 sign[ LCFG_TWL_HWID_SIGN_LENGTH ];
|
||||||
|
if( !LCFG_ReadHWID_Signature( sign ) ||
|
||||||
|
!LCFG_CheckHWID_Signature( sign )
|
||||||
|
) {
|
||||||
|
if( isPrintf ) OS_TPrintf( "HWID Signature check failed.\n" );
|
||||||
|
return FALSE;
|
||||||
|
}else {
|
||||||
|
if( isPrintf ) OS_TPrintf( "HWID Signature check succeeded.\n" );
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*
|
/*---------------------------------------------------------------------------*
|
||||||
Name: HWI_ModifyLanguage
|
Name: HWI_ModifyLanguage
|
||||||
|
|
||||||
@ -530,7 +550,7 @@ BOOL HWI_WriteHWSecureInfoFile( u8 region, const u8 *pSerialNo, BOOL isDisableWi
|
|||||||
|
|
||||||
// ライト
|
// ライト
|
||||||
if( isWrite &&
|
if( isWrite &&
|
||||||
!LCFGi_THW_WriteSecureInfo( s_pPrivKeyBuffer ) ) {
|
!LCFGi_THW_WriteSecureInfo( s_pPrivKeyBuffer, s_privKeyBufferLen ) ) {
|
||||||
isWrite = FALSE;
|
isWrite = FALSE;
|
||||||
OS_TPrintf( "HW Secure Info Write failed.\n" );
|
OS_TPrintf( "HW Secure Info Write failed.\n" );
|
||||||
}
|
}
|
||||||
@ -552,13 +572,14 @@ BOOL HWI_WriteHWSecureInfoFile( u8 region, const u8 *pSerialNo, BOOL isDisableWi
|
|||||||
*---------------------------------------------------------------------------*/
|
*---------------------------------------------------------------------------*/
|
||||||
BOOL HWI_WriteHWIDSignFile( void )
|
BOOL HWI_WriteHWIDSignFile( void )
|
||||||
{
|
{
|
||||||
BOOL retval;
|
BOOL retval = TRUE;
|
||||||
|
|
||||||
(void)FS_DeleteFile( (char *)LCFG_TWL_HWID_SIGN_PATH );
|
(void)FS_DeleteFile( (char *)LCFG_TWL_HWID_SIGN_PATH );
|
||||||
if( !FS_CreateFile( LCFG_TWL_HWID_SIGN_PATH, FS_PERMIT_R | FS_PERMIT_W ) ) {
|
if( !FS_CreateFile( LCFG_TWL_HWID_SIGN_PATH, FS_PERMIT_R | FS_PERMIT_W ) ) {
|
||||||
OS_TPrintf( "file create error. %s\n", LCFG_TWL_HWID_SIGN_PATH );
|
OS_TPrintf( "file create error. %s\n", LCFG_TWL_HWID_SIGN_PATH );
|
||||||
}
|
}
|
||||||
retval = LCFG_WriteHWID_Signature( s_pPrivKeyBuffer );
|
retval &= LCFG_WriteHWID_Signature( s_pPrivKeyBufferHWID, s_privKeyBufferLenHWID );
|
||||||
|
retval &= CheckHWID_Signature( FALSE );
|
||||||
if( !retval ) {
|
if( !retval ) {
|
||||||
OS_TPrintf( "HWID Signature Write failed.\n" );
|
OS_TPrintf( "HWID Signature Write failed.\n" );
|
||||||
}
|
}
|
||||||
|
|||||||
@ -65,9 +65,11 @@ include $(TWLSDK_ROOT)/build/buildtools/commondefs.gx.demolib
|
|||||||
|
|
||||||
ifneq ($(TWL_IPL_RED_PRIVATE_ROOT),)
|
ifneq ($(TWL_IPL_RED_PRIVATE_ROOT),)
|
||||||
ifdef FIRM_USE_PRODUCT_KEYS
|
ifdef FIRM_USE_PRODUCT_KEYS
|
||||||
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo.der'
|
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo.der' \
|
||||||
|
-DHWID_PRIVKEY='private_HWID.der'
|
||||||
else
|
else
|
||||||
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo_dev.der'
|
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo_dev.der' \
|
||||||
|
-DHWID_PRIVKEY='private_HWID_dev.der'
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -76,7 +78,6 @@ MAKEROM_FLAGS += -DTITLEID_LO='$(TITLEID_LO)' \
|
|||||||
MAKETAD_FLAGS += -s
|
MAKETAD_FLAGS += -s
|
||||||
|
|
||||||
SYSMENU_LIBS = \
|
SYSMENU_LIBS = \
|
||||||
libacsign$(TWL_LIBSUFFIX).a \
|
|
||||||
libnamut$(TWL_LIBSUFFIX).a
|
libnamut$(TWL_LIBSUFFIX).a
|
||||||
|
|
||||||
SDK_APPEND_LIBS = \
|
SDK_APPEND_LIBS = \
|
||||||
@ -92,8 +93,6 @@ LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
|
|||||||
|
|
||||||
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
|
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
|
||||||
|
|
||||||
GLIBRARIES := $(filter-out libcrypto$(TWL_LIBSUFFIX).a,$(GLIBRARIES))
|
|
||||||
|
|
||||||
#LDIRT_CLEAN =
|
#LDIRT_CLEAN =
|
||||||
#INSTALL_TARGETS =
|
#INSTALL_TARGETS =
|
||||||
INSTALL_DIR = $(SDK_NMENU_DATADIR)
|
INSTALL_DIR = $(SDK_NMENU_DATADIR)
|
||||||
|
|||||||
@ -220,5 +220,5 @@ RomSpec
|
|||||||
Segment ALL
|
Segment ALL
|
||||||
HostRoot $(PRIVKEY_PATH)
|
HostRoot $(PRIVKEY_PATH)
|
||||||
Root /key
|
Root /key
|
||||||
File $(HWINFO_PRIVKEY)
|
File $(HWINFO_PRIVKEY) $(HWID_PRIVKEY)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -114,9 +114,11 @@ include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
|
|||||||
|
|
||||||
ifneq ($(TWL_IPL_RED_PRIVATE_ROOT),)
|
ifneq ($(TWL_IPL_RED_PRIVATE_ROOT),)
|
||||||
ifdef FIRM_USE_PRODUCT_KEYS
|
ifdef FIRM_USE_PRODUCT_KEYS
|
||||||
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo.der'
|
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo.der' \
|
||||||
|
-DHWID_PRIVKEY='private_HWID.der'
|
||||||
else
|
else
|
||||||
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo_dev.der'
|
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo_dev.der' \
|
||||||
|
-DHWID_PRIVKEY='private_HWID_dev.der'
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -128,8 +130,6 @@ MAKEROM_FLAGS += -DTITLEID_LO='$(TITLEID_LO)' \
|
|||||||
MAKETAD_FLAGS += -s
|
MAKETAD_FLAGS += -s
|
||||||
|
|
||||||
SYSMENU_LIBS = \
|
SYSMENU_LIBS = \
|
||||||
libacsign$(TWL_LIBSUFFIX).a \
|
|
||||||
libacsign_enc$(TWL_LIBSUFFIX).a \
|
|
||||||
libnamut$(TWL_LIBSUFFIX).a
|
libnamut$(TWL_LIBSUFFIX).a
|
||||||
|
|
||||||
SDK_APPEND_LIBS = \
|
SDK_APPEND_LIBS = \
|
||||||
@ -144,8 +144,6 @@ LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
|
|||||||
|
|
||||||
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
|
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
|
||||||
|
|
||||||
GLIBRARIES := $(filter-out libcrypto$(TWL_LIBSUFFIX).a,$(GLIBRARIES))
|
|
||||||
|
|
||||||
# インストール設定
|
# インストール設定
|
||||||
ifeq ($(TWL_BUILD_TYPE),FINALROM)
|
ifeq ($(TWL_BUILD_TYPE),FINALROM)
|
||||||
INSTALL_DIR = $(ROOT)/bin/ARM9-TS/Rom
|
INSTALL_DIR = $(ROOT)/bin/ARM9-TS/Rom
|
||||||
|
|||||||
@ -223,5 +223,5 @@ RomSpec
|
|||||||
File *.*
|
File *.*
|
||||||
HostRoot $(PRIVKEY_PATH)
|
HostRoot $(PRIVKEY_PATH)
|
||||||
Root /key
|
Root /key
|
||||||
File $(HWINFO_PRIVKEY)
|
File $(HWINFO_PRIVKEY) $(HWID_PRIVKEY)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -98,9 +98,11 @@ include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
|
|||||||
|
|
||||||
ifneq ($(TWL_IPL_RED_PRIVATE_ROOT),)
|
ifneq ($(TWL_IPL_RED_PRIVATE_ROOT),)
|
||||||
ifdef FIRM_USE_PRODUCT_KEYS
|
ifdef FIRM_USE_PRODUCT_KEYS
|
||||||
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo.der'
|
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo.der' \
|
||||||
|
-DHWID_PRIVKEY='private_HWID.der'
|
||||||
else
|
else
|
||||||
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo_dev.der'
|
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo_dev.der' \
|
||||||
|
-DHWID_PRIVKEY='private_HWID_dev.der'
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -112,8 +114,6 @@ MAKEROM_FLAGS += -DTITLEID_LO='$(TITLEID_LO)' \
|
|||||||
MAKETAD_FLAGS += -s
|
MAKETAD_FLAGS += -s
|
||||||
|
|
||||||
SYSMENU_LIBS = \
|
SYSMENU_LIBS = \
|
||||||
libacsign$(TWL_LIBSUFFIX).a \
|
|
||||||
libacsign_enc$(TWL_LIBSUFFIX).a \
|
|
||||||
libnamut$(TWL_LIBSUFFIX).a
|
libnamut$(TWL_LIBSUFFIX).a
|
||||||
|
|
||||||
SDK_APPEND_LIBS = \
|
SDK_APPEND_LIBS = \
|
||||||
@ -128,8 +128,6 @@ LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
|
|||||||
|
|
||||||
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
|
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
|
||||||
|
|
||||||
GLIBRARIES := $(filter-out libcrypto$(TWL_LIBSUFFIX).a,$(GLIBRARIES))
|
|
||||||
|
|
||||||
#LDIRT_CLEAN =
|
#LDIRT_CLEAN =
|
||||||
#INSTALL_TARGETS =
|
#INSTALL_TARGETS =
|
||||||
#INSTALL_DIR = $(SDK_NMENU_DATADIR)
|
#INSTALL_DIR = $(SDK_NMENU_DATADIR)
|
||||||
|
|||||||
@ -93,9 +93,11 @@ include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
|
|||||||
|
|
||||||
ifneq ($(TWL_IPL_RED_PRIVATE_ROOT),)
|
ifneq ($(TWL_IPL_RED_PRIVATE_ROOT),)
|
||||||
ifdef FIRM_USE_PRODUCT_KEYS
|
ifdef FIRM_USE_PRODUCT_KEYS
|
||||||
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo.der'
|
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo.der' \
|
||||||
|
-DHWID_PRIVKEY='private_HWID.der'
|
||||||
else
|
else
|
||||||
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo_dev.der'
|
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo_dev.der' \
|
||||||
|
-DHWID_PRIVKEY='private_HWID_dev.der'
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -107,8 +109,6 @@ MAKEROM_FLAGS += -DTITLEID_LO='$(TITLEID_LO)' \
|
|||||||
MAKETAD_FLAGS += -s
|
MAKETAD_FLAGS += -s
|
||||||
|
|
||||||
SYSMENU_LIBS = \
|
SYSMENU_LIBS = \
|
||||||
libacsign$(TWL_LIBSUFFIX).a \
|
|
||||||
libacsign_enc$(TWL_LIBSUFFIX).a \
|
|
||||||
libnamut$(TWL_LIBSUFFIX).a
|
libnamut$(TWL_LIBSUFFIX).a
|
||||||
|
|
||||||
SDK_APPEND_LIBS = \
|
SDK_APPEND_LIBS = \
|
||||||
@ -123,8 +123,6 @@ LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
|
|||||||
|
|
||||||
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
|
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
|
||||||
|
|
||||||
GLIBRARIES := $(filter-out libcrypto$(TWL_LIBSUFFIX).a,$(GLIBRARIES))
|
|
||||||
|
|
||||||
#LDIRT_CLEAN =
|
#LDIRT_CLEAN =
|
||||||
#INSTALL_TARGETS =
|
#INSTALL_TARGETS =
|
||||||
INSTALL_DIR = $(SDK_NMENU_DATADIR)
|
INSTALL_DIR = $(SDK_NMENU_DATADIR)
|
||||||
|
|||||||
@ -228,5 +228,5 @@ RomSpec
|
|||||||
File *.*
|
File *.*
|
||||||
HostRoot $(PRIVKEY_PATH)
|
HostRoot $(PRIVKEY_PATH)
|
||||||
Root /key
|
Root /key
|
||||||
File $(HWINFO_PRIVKEY)
|
File $(HWINFO_PRIVKEY) $(HWID_PRIVKEY)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -75,9 +75,11 @@ include $(TWLSDK_ROOT)/build/buildtools/commondefs.gx.demolib
|
|||||||
|
|
||||||
ifneq ($(TWL_IPL_RED_PRIVATE_ROOT),)
|
ifneq ($(TWL_IPL_RED_PRIVATE_ROOT),)
|
||||||
ifdef FIRM_USE_PRODUCT_KEYS
|
ifdef FIRM_USE_PRODUCT_KEYS
|
||||||
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo.der'
|
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo.der' \
|
||||||
|
-DHWID_PRIVKEY='private_HWID.der'
|
||||||
else
|
else
|
||||||
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo_dev.der'
|
MAKEROM_FLAGS += -DHWINFO_PRIVKEY='private_HWInfo_dev.der' \
|
||||||
|
-DHWID_PRIVKEY='private_HWID_dev.der'
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -113,8 +115,6 @@ LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
|
|||||||
|
|
||||||
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
|
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
|
||||||
|
|
||||||
GLIBRARIES := $(filter-out libcrypto$(TWL_LIBSUFFIX).a,$(GLIBRARIES))
|
|
||||||
|
|
||||||
#LDIRT_CLEAN =
|
#LDIRT_CLEAN =
|
||||||
#INSTALL_TARGETS =
|
#INSTALL_TARGETS =
|
||||||
INSTALL_DIR = $(SDK_NMENU_DATADIR)
|
INSTALL_DIR = $(SDK_NMENU_DATADIR)
|
||||||
|
|||||||
@ -225,7 +225,7 @@ RomSpec
|
|||||||
File *.*
|
File *.*
|
||||||
HostRoot $(PRIVKEY_PATH)
|
HostRoot $(PRIVKEY_PATH)
|
||||||
Root /key
|
Root /key
|
||||||
File $(HWINFO_PRIVKEY)
|
File $(HWINFO_PRIVKEY) $(HWID_PRIVKEY)
|
||||||
HostRoot $(TWL_IPL_RED_ROOT)/build/systemMenu_tools/NandInitializerRed/data
|
HostRoot $(TWL_IPL_RED_ROOT)/build/systemMenu_tools/NandInitializerRed/data
|
||||||
Root /data
|
Root /data
|
||||||
File TWLFontTable.dat
|
File TWLFontTable.dat
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user