projects
/
oweals
/
gnunet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'credentials' of git+ssh://gnunet.org/gnunet into credentials
[oweals/gnunet.git]
/
src
/
identity-provider
/
identity_token.c
diff --git
a/src/identity-provider/identity_token.c
b/src/identity-provider/identity_token.c
index 3bed6962e4ea6bd67b6b2507c1ff8a18752af3ce..31249840b0ff989ac4b5375601549336adf9b4fe 100644
(file)
--- a/
src/identity-provider/identity_token.c
+++ b/
src/identity-provider/identity_token.c
@@
-19,7
+19,7
@@
*/
/**
*/
/**
- * @file identity-
token
/identity_token.c
+ * @file identity-
provider
/identity_token.c
* @brief helper library to manage identity tokens
* @author Martin Schanzenbach
*/
* @brief helper library to manage identity tokens
* @author Martin Schanzenbach
*/
@@
-98,7
+98,10
@@
decrypt_str_ecdhe (const struct GNUNET_CRYPTO_EcdsaPrivateKey *priv_key,
&enc_key,
&enc_iv,
str_buf);
&enc_key,
&enc_iv,
str_buf);
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Decrypted bytes: %d Expected bytes: %d\n", str_size, cyphertext_len);
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Decrypted bytes: %zd Expected bytes: %zd\n",
+ str_size,
+ cyphertext_len);
if (-1 == str_size)
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "ECDH invalid\n");
if (-1 == str_size)
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "ECDH invalid\n");
@@
-106,7
+109,7
@@
decrypt_str_ecdhe (const struct GNUNET_CRYPTO_EcdsaPrivateKey *priv_key,
return GNUNET_SYSERR;
}
*result_str = GNUNET_malloc (str_size+1);
return GNUNET_SYSERR;
}
*result_str = GNUNET_malloc (str_size+1);
- memcpy (*result_str, str_buf, str_size);
+
GNUNET_
memcpy (*result_str, str_buf, str_size);
(*result_str)[str_size] = '\0';
GNUNET_free (str_buf);
return GNUNET_OK;
(*result_str)[str_size] = '\0';
GNUNET_free (str_buf);
return GNUNET_OK;
@@
-172,14
+175,14
@@
encrypt_str_ecdhe (const char *plaintext,
pub_key,
&new_key_hash));
create_sym_key_from_ecdh(&new_key_hash, &skey, &iv);
pub_key,
&new_key_hash));
create_sym_key_from_ecdh(&new_key_hash, &skey, &iv);
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Encrypting string %s\n (len=%d)",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Encrypting string %s\n (len=%
z
d)",
plaintext,
strlen (plaintext));
enc_size = GNUNET_CRYPTO_symmetric_encrypt (plaintext,
strlen (plaintext),
&skey, &iv,
*cyphertext);
plaintext,
strlen (plaintext));
enc_size = GNUNET_CRYPTO_symmetric_encrypt (plaintext,
strlen (plaintext),
&skey, &iv,
*cyphertext);
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Encrypted (len=%d)", enc_size);
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Encrypted (len=%
z
d)", enc_size);
return GNUNET_OK;
}
return GNUNET_OK;
}
@@
-421,6
+424,9
@@
token_parse (const char* raw_data,
GNUNET_asprintf (&tmp_buf, "%s", raw_data);
ecdh_pubkey_str = strtok (tmp_buf, ",");
enc_token_str = strtok (NULL, ",");
GNUNET_asprintf (&tmp_buf, "%s", raw_data);
ecdh_pubkey_str = strtok (tmp_buf, ",");
enc_token_str = strtok (NULL, ",");
+
+ GNUNET_assert (NULL != ecdh_pubkey_str);
+ GNUNET_assert (NULL != enc_token_str);
GNUNET_STRINGS_string_to_data (ecdh_pubkey_str,
strlen (ecdh_pubkey_str),
GNUNET_STRINGS_string_to_data (ecdh_pubkey_str,
strlen (ecdh_pubkey_str),
@@
-536,7
+542,7
@@
token_to_string (const struct IdentityToken *token,
purpose->size =
htonl (strlen (signature_target) + sizeof (struct GNUNET_CRYPTO_EccSignaturePurpose));
purpose->purpose = htonl(GNUNET_SIGNATURE_PURPOSE_GNUID_TOKEN);
purpose->size =
htonl (strlen (signature_target) + sizeof (struct GNUNET_CRYPTO_EccSignaturePurpose));
purpose->purpose = htonl(GNUNET_SIGNATURE_PURPOSE_GNUID_TOKEN);
- memcpy (&purpose[1], signature_target, strlen (signature_target));
+
GNUNET_
memcpy (&purpose[1], signature_target, strlen (signature_target));
if (GNUNET_OK != GNUNET_CRYPTO_ecdsa_sign (priv_key,
purpose,
(struct GNUNET_CRYPTO_EcdsaSignature *)&token->signature))
if (GNUNET_OK != GNUNET_CRYPTO_ecdsa_sign (priv_key,
purpose,
(struct GNUNET_CRYPTO_EcdsaSignature *)&token->signature))
@@
-544,6
+550,7
@@
token_to_string (const struct IdentityToken *token,
GNUNET_free (signature_target);
GNUNET_free (payload_str);
GNUNET_free (payload_base64);
GNUNET_free (signature_target);
GNUNET_free (payload_str);
GNUNET_free (payload_base64);
+ GNUNET_free (header_base64);
GNUNET_free (purpose);
return GNUNET_SYSERR;
}
GNUNET_free (purpose);
return GNUNET_SYSERR;
}
@@
-707,11
+714,11
@@
ticket_serialize (struct TokenTicket *ticket,
strlen (code_payload_str));
purpose->purpose = htonl(GNUNET_SIGNATURE_PURPOSE_GNUID_TICKET);
write_ptr = (char*) &purpose[1];
strlen (code_payload_str));
purpose->purpose = htonl(GNUNET_SIGNATURE_PURPOSE_GNUID_TICKET);
write_ptr = (char*) &purpose[1];
- memcpy (write_ptr,
+
GNUNET_
memcpy (write_ptr,
&ticket->ecdh_pubkey,
sizeof (struct GNUNET_CRYPTO_EcdhePublicKey));
write_ptr += sizeof (struct GNUNET_CRYPTO_EcdhePublicKey);
&ticket->ecdh_pubkey,
sizeof (struct GNUNET_CRYPTO_EcdhePublicKey));
write_ptr += sizeof (struct GNUNET_CRYPTO_EcdhePublicKey);
- memcpy (write_ptr, enc_ticket_payload, strlen (code_payload_str));
+
GNUNET_
memcpy (write_ptr, enc_ticket_payload, strlen (code_payload_str));
GNUNET_assert (GNUNET_OK == GNUNET_CRYPTO_ecdsa_sign (priv_key,
purpose,
&ticket->signature));
GNUNET_assert (GNUNET_OK == GNUNET_CRYPTO_ecdsa_sign (priv_key,
purpose,
&ticket->signature));
@@
-925,9
+932,9
@@
ticket_parse (const char *raw_data,
enc_data_len);
purpose->purpose = htonl(GNUNET_SIGNATURE_PURPOSE_GNUID_TICKET);
write_ptr = (char*) &purpose[1];
enc_data_len);
purpose->purpose = htonl(GNUNET_SIGNATURE_PURPOSE_GNUID_TICKET);
write_ptr = (char*) &purpose[1];
- memcpy (write_ptr, &ticket->ecdh_pubkey, sizeof (struct GNUNET_CRYPTO_EcdhePublicKey));
+
GNUNET_
memcpy (write_ptr, &ticket->ecdh_pubkey, sizeof (struct GNUNET_CRYPTO_EcdhePublicKey));
write_ptr += sizeof (struct GNUNET_CRYPTO_EcdhePublicKey);
write_ptr += sizeof (struct GNUNET_CRYPTO_EcdhePublicKey);
- memcpy (write_ptr, enc_data, enc_data_len);
+
GNUNET_
memcpy (write_ptr, enc_data, enc_data_len);
if (GNUNET_OK != GNUNET_CRYPTO_ecdsa_verify (GNUNET_SIGNATURE_PURPOSE_GNUID_TICKET,
purpose,
if (GNUNET_OK != GNUNET_CRYPTO_ecdsa_verify (GNUNET_SIGNATURE_PURPOSE_GNUID_TICKET,
purpose,