エラーコード一新、opensslのエラーコードはprivateに移動(HSM系は削除)

git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-09-30%20-%20paladin.7z/paladin/ctr_eFuse@97 ff987cc8-cf2f-4642-8568-d52cce064691
This commit is contained in:
kubodera_yuichi 2009-12-25 07:24:20 +00:00
parent e79390947d
commit e086226612
3 changed files with 28 additions and 62 deletions

View File

@ -135,7 +135,7 @@ int cr_print_flag = 0;
// generate_id関数のイニシャライズ // generate_id関数のイニシャライズ
int cr_generate_id_initialize( u8 err[CR_ID_BUF_SIZE] ) int cr_generate_id_initialize( u8 err[CR_ID_BUF_SIZE] )
{ {
int ret_code = CR_GENID_INITIALIZE_OK; int ret_code = CR_GENID_SUCCESS;
// 生成カウンタの初期化 // 生成カウンタの初期化
generatingCount = 0; generatingCount = 0;
@ -154,11 +154,9 @@ int cr_generate_id_initialize( u8 err[CR_ID_BUF_SIZE] )
#ifdef DEBUG_PRINT #ifdef DEBUG_PRINT
printf( "error(%d), CALL_STACK : %s\n", (int)cr_err_buf->errorCode, cr_err_buf->callStack ); printf( "error(%d), CALL_STACK : %s\n", (int)cr_err_buf->errorCode, cr_err_buf->callStack );
#endif #endif
return 0; return CR_GENID_FAILED;
} }
#endif #endif
ret_code = CR_GENID_INITIALIZE_OK;
return ret_code; return ret_code;
} // cr_generate_id_initialize } // cr_generate_id_initialize
@ -167,18 +165,16 @@ int cr_generate_id_initialize( u8 err[CR_ID_BUF_SIZE] )
// generate_id関数のファイナライズ // generate_id関数のファイナライズ
int cr_generate_id_finalize( void ) int cr_generate_id_finalize( void )
{ {
int ret_code = CR_GENID_FINALIZE_OK; int ret_code = CR_GENID_SUCCESS;
// HSM // HSM
#ifdef USE_HSM #ifdef USE_HSM
ret_code = hsm_finalize(); ret_code = hsm_finalize();
if ( ret_code != CR_GENID_SUCCESS ) if ( ret_code != CR_GENID_SUCCESS )
{ {
return 0; return CR_GENID_FAILED;
} }
#endif // USE_HSM #endif // USE_HSM
ret_code = CR_GENID_FINALIZE_OK;
return ret_code; return ret_code;
} // cr_generate_id_finalize } // cr_generate_id_finalize

View File

@ -155,6 +155,26 @@ extern "C" {
#define CR_RSV_LENGTH 0x10 #define CR_RSV_LENGTH 0x10
#define EC_CURVE_NAME NID_sect233r1 #define EC_CURVE_NAME NID_sect233r1
//---------------------------------------------------
// OpenSSLの処理結果によるエラーコード
//---------------------------------------------------
#define CR_GENID_ERROR_BN_NEW ( -1)
#define CR_GENID_ERROR_ECC_KEY_NEW ( -2)
#define CR_GENID_ERROR_ECC_GENERATE_PRIVATE_KEY ( -3)
#define CR_GENID_ERROR_ECC_GENERATE_PUBLIC_KEY ( -4)
#define CR_GENID_ERROR_ECC_READ_PRIVATE_KEY ( -5)
#define CR_GENID_ERROR_ECDSA_SIGN ( -6)
#define CR_GENID_ERROR_ECDSA_DEC ( -7)
#define CR_GENID_ERROR_ECDSA_VERIFY ( -8)
#define CR_GENID_ERROR_AES_ENC ( -9)
#define CR_GENID_ERROR_AES_DEC (-10)
#define CR_GENID_ERROR_AES_VERIFY (-11)
#define CR_GENID_ERROR_RSA_READ_PRIVATE_KEY (-12)
#define CR_GENID_ERROR_RSA_READ_PUBLIC_KEY (-13)
#define CR_GENID_ERROR_RSA_ENC (-14)
#define CR_GENID_ERROR_RSA_DEC (-15)
#define CR_GENID_ERROR_RSA_VERIFY (-16)
typedef struct { typedef struct {
u32 magic_number; /* 0x00 - 0x03 = 0xdeadb00f Šmè<E28099>I*/ u32 magic_number; /* 0x00 - 0x03 = 0xdeadb00f Šmè<E28099>I*/
u32 serial[CR_NUM_OF_SERIAL]; /* 0x04 - 0x07 32bit device ID u32 serial[CR_NUM_OF_SERIAL]; /* 0x04 - 0x07 32bit device ID

58
main.c
View File

@ -202,9 +202,9 @@ int main(int ac, char *argv[])
// cr_generate_id を使用する前に呼び出す // cr_generate_id を使用する前に呼び出す
ret_code = cr_generate_id_initialize( id ); ret_code = cr_generate_id_initialize( id );
if ( ret_code != CR_GENID_INITIALIZE_OK ) if ( ret_code != CR_GENID_SUCCESS )
{ {
printf( "error(%d) : cr_generate_id_initialize\n", ret_code ); printf( "error : cr_generate_id_initialize\n" );
return 0; // error return 0; // error
} }
@ -255,56 +255,6 @@ int main(int ac, char *argv[])
ret_code = cr_generate_id( serial, id, T_BONDING_OPTION ); ret_code = cr_generate_id( serial, id, T_BONDING_OPTION );
if( ret_code != 0 ) { if( ret_code != 0 ) {
fprintf(stderr,"generate_id failed\n"); fprintf(stderr,"generate_id failed\n");
switch( ret_code ) {
case CR_GENID_ERROR_RSA_ENC:
fprintf(stderr,"failed to RSA_public_encrypt\n");
fprintf(stderr," internal errcode=0x%02x%02x%02x%02x\n", id[11],id[10],id[9],id[8]);
break;
case CR_GENID_ERROR_RSA_DEC:
fprintf(stderr,"failed to RSA_private_decrypt\n");
fprintf(stderr," internal errcode=0x%02x%02x%02x%02x\n", id[11],id[10],id[9],id[8]);
break;
case CR_GENID_ERROR_RSA_VERIFY:
fprintf(stderr,"RSA verify failed\n");
fprintf(stderr," internal errcode=0x%02x%02x%02x%02x\n", id[11],id[10],id[9],id[8]);
break;
case CR_GENID_ERROR_ECDSA_SIGN:
fprintf(stderr,"ECDSA sign failure. No ECDSA sign will be done.\n");
fprintf(stderr," internal errcode=0x%02x%02x%02x%02x\n", id[11],id[10],id[9],id[8]);
break;
case CR_GENID_ERROR_ECDSA_VERIFY:
fprintf(stderr,"ECDSA_verify NG.\n");
fprintf(stderr," internal errcode=0x%02x%02x%02x%02x\n", id[11],id[10],id[9],id[8]);
break;
case CR_GENID_ERROR_ECC_GENERATE_PRIVATE_KEY:
fprintf(stderr,"error EC generate_private_key\n");
fprintf(stderr," internal errcode=0x%02x%02x%02x%02x\n", id[11],id[10],id[9],id[8]);
break;
case CR_GENID_ERROR_ECC_GENERATE_PUBLIC_KEY:
fprintf(stderr,"error EC generate_public_key\n");
fprintf(stderr," internal errcode=0x%02x%02x%02x%02x\n", id[11],id[10],id[9],id[8]);
break;
case CR_GENID_ERROR_RSA_READ_PRIVATE_KEY:
fprintf(stderr,"error RSA read private key\n");
fprintf(stderr," internal errcode=0x%02x%02x%02x%02x\n", id[11],id[10],id[9],id[8]);
break;
case CR_GENID_ERROR_RSA_READ_PUBLIC_KEY:
fprintf(stderr,"error RSA read public key\n");
fprintf(stderr," internal errcode=0x%02x%02x%02x%02x\n", id[11],id[10],id[9],id[8]);
break;
case CR_GENID_ERROR_BN_NEW:
fprintf(stderr,"error bn_new\n");
fprintf(stderr," internal errcode=0x%02x%02x%02x%02x\n", id[11],id[10],id[9],id[8]);
break;
case CR_GENID_ERROR_ECC_KEY_NEW:
fprintf(stderr,"error EC_KEY_new_by_curve_name\n");
fprintf(stderr," internal errcode=0x%02x%02x%02x%02x\n", id[11],id[10],id[9],id[8]);
break;
default:
fprintf(stderr,"error unknown error ret_code=%d\n", ret_code);
fprintf(stderr," internal errcode=0x%02x%02x%02x%02x\n", id[11],id[10],id[9],id[8]);
break;
}
} }
else { else {
time_end = gettimeofday_sec(); time_end = gettimeofday_sec();
@ -397,9 +347,9 @@ int main(int ac, char *argv[])
end: end:
// cr_generate_id を使用した後に呼び出す // cr_generate_id を使用した後に呼び出す
ret_code = cr_generate_id_finalize(); ret_code = cr_generate_id_finalize();
if ( ret_code != CR_GENID_FINALIZE_OK ) if ( ret_code != CR_GENID_SUCCESS )
{ {
printf( "error : cr_generate_id_finalize()\n" ); printf( "error : cr_generate_id_finalize\n" );
return 0; // error return 0; // error
} }