working on oauth

This commit is contained in:
mom040267 2014-08-29 05:53:29 +00:00
parent 01ba5fbffe
commit e8e571778a
2 changed files with 22 additions and 3 deletions

View File

@ -107,7 +107,7 @@ void convert_oauth_key_data_raw(const oauth_key_data_raw *raw, oauth_key_data *o
if(raw->ikm_key[0]) {
size_t ikm_key_size = 0;
char *ikm_key = base64_encode((const unsigned char *)(raw->ikm_key),strlen(raw->ikm_key),&ikm_key_size);
char *ikm_key = (char*)base64_decode(raw->ikm_key,strlen(raw->ikm_key),&ikm_key_size);
if(ikm_key) {
ns_bcopy(ikm_key,oakd->ikm_key,ikm_key_size);
oakd->ikm_key_size = ikm_key_size;
@ -117,7 +117,7 @@ void convert_oauth_key_data_raw(const oauth_key_data_raw *raw, oauth_key_data *o
if(raw->as_rs_key[0]) {
size_t as_rs_key_size = 0;
char *as_rs_key = base64_encode((const unsigned char *)(raw->as_rs_key),strlen(raw->as_rs_key),&as_rs_key_size);
char *as_rs_key = (char*)base64_decode(raw->as_rs_key,strlen(raw->as_rs_key),&as_rs_key_size);
if(as_rs_key) {
ns_bcopy(as_rs_key,oakd->as_rs_key,as_rs_key_size);
oakd->as_rs_key_size = as_rs_key_size;
@ -127,7 +127,7 @@ void convert_oauth_key_data_raw(const oauth_key_data_raw *raw, oauth_key_data *o
if(raw->auth_key[0]) {
size_t auth_key_size = 0;
char *auth_key = base64_encode((const unsigned char *)(raw->auth_key),strlen(raw->auth_key),&auth_key_size);
char *auth_key = (char*)base64_decode(raw->auth_key,strlen(raw->auth_key),&auth_key_size);
if(auth_key) {
ns_bcopy(auth_key,oakd->auth_key,auth_key_size);
oakd->auth_key_size = auth_key_size;

View File

@ -1145,6 +1145,25 @@ void run_db_test(void)
printf("DB TEST 5:\n");
dbd->del_oauth_key((const u08bits*)"kid");
dbd->list_oauth_keys();
printf("DB TEST 6:\n");
dbd->get_oauth_key((const u08bits*)"north",key);
oauth_key_data oakd;
convert_oauth_key_data_raw(key, &oakd);
printf(" kid=%s, ikm_key=%s, timestamp=%llu, lifetime=%lu, hkdf_hash_func=%s, as_rs_alg=%s, as_rs_key_size=%d, auth_alg=%s, auth_key_size=%d\n",
oakd.kid, oakd.ikm_key, (unsigned long long)oakd.timestamp, (unsigned long)oakd.lifetime, oakd.hkdf_hash_func,
oakd.as_rs_alg, (int)oakd.as_rs_key_size, oakd.auth_alg, (int)oakd.auth_key_size);
oauth_key oak;
char err_msg[1025];
err_msg[0]=0;
if(convert_oauth_key_data(&oakd,&oak,err_msg,sizeof(err_msg)-1)<0) {
printf(" ERROR: %s\n",err_msg);
} else {
printf(" OK!\n");
}
printf("DB TEST END\n");
}
}