aboutsummaryrefslogtreecommitdiff
path: root/src/credential/gnunet-service-credential.c
diff options
context:
space:
mode:
authorSchanzenbach, Martin <mschanzenbach@posteo.de>2016-12-05 22:09:11 +0100
committerSchanzenbach, Martin <mschanzenbach@posteo.de>2016-12-05 22:09:11 +0100
commit01fcfd11a5e4c170e0b31c60157fb9748c0d3277 (patch)
treec6f7735d692f02843ae6f3b2bf5cba126863efd7 /src/credential/gnunet-service-credential.c
parent6d96eb580bec0831222811f3841174c39e437709 (diff)
downloadgnunet-01fcfd11a5e4c170e0b31c60157fb9748c0d3277.tar.gz
gnunet-01fcfd11a5e4c170e0b31c60157fb9748c0d3277.zip
- remove purpose from cred
Diffstat (limited to 'src/credential/gnunet-service-credential.c')
-rw-r--r--src/credential/gnunet-service-credential.c21
1 files changed, 16 insertions, 5 deletions
diff --git a/src/credential/gnunet-service-credential.c b/src/credential/gnunet-service-credential.c
index 117156379..20f6fe4e0 100644
--- a/src/credential/gnunet-service-credential.c
+++ b/src/credential/gnunet-service-credential.c
@@ -262,6 +262,7 @@ send_lookup_response (void* cls,
262 struct GNUNET_MQ_Envelope *env; 262 struct GNUNET_MQ_Envelope *env;
263 struct VerifyResultMessage *rmsg; 263 struct VerifyResultMessage *rmsg;
264 const struct GNUNET_CREDENTIAL_CredentialRecordData *crd; 264 const struct GNUNET_CREDENTIAL_CredentialRecordData *crd;
265 struct GNUNET_CRYPTO_EccSignaturePurpose *purp;
265 struct CredentialRecordEntry *cr_entry; 266 struct CredentialRecordEntry *cr_entry;
266 267
267 cred_record_count = 0; 268 cred_record_count = 0;
@@ -284,16 +285,26 @@ send_lookup_response (void* cls,
284 GNUNET_CONTAINER_DLL_insert_tail (vrh->cred_chain_head, 285 GNUNET_CONTAINER_DLL_insert_tail (vrh->cred_chain_head,
285 vrh->cred_chain_tail, 286 vrh->cred_chain_tail,
286 cr_entry); 287 cr_entry);
287 288 purp = GNUNET_malloc (sizeof (struct GNUNET_CRYPTO_EccSignaturePurpose) +
289 sizeof (struct GNUNET_CRYPTO_EcdsaPublicKey) +
290 strlen ((char*)&crd[1]) +1 );
291 purp->size = htonl (sizeof (struct GNUNET_CRYPTO_EccSignaturePurpose) +
292 sizeof (struct GNUNET_CRYPTO_EcdsaPublicKey) +
293 strlen ((char*)&crd[1]) +1 );
294
295 purp->purpose = htonl (GNUNET_SIGNATURE_PURPOSE_CREDENTIAL);
288 if(GNUNET_OK == GNUNET_CRYPTO_ecdsa_verify(GNUNET_SIGNATURE_PURPOSE_CREDENTIAL, 296 if(GNUNET_OK == GNUNET_CRYPTO_ecdsa_verify(GNUNET_SIGNATURE_PURPOSE_CREDENTIAL,
289 &crd->purpose, 297 purp,
290 &crd->sig, &crd->issuer_key)) 298 &crd->sig,
291 { 299 &crd->issuer_key))
300 {
301 GNUNET_free (purp);
292 break; 302 break;
293 } 303 }
304 GNUNET_free (purp);
294 305
295 } 306 }
296 307
297 308
298 309
299 /** 310 /**