[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r37797 - in gnunet/src: identity-provider namecache
From: |
gnunet |
Subject: |
[GNUnet-SVN] r37797 - in gnunet/src: identity-provider namecache |
Date: |
Fri, 26 Aug 2016 14:52:33 +0200 |
Author: grothoff
Date: 2016-08-26 14:52:33 +0200 (Fri, 26 Aug 2016)
New Revision: 37797
Modified:
gnunet/src/identity-provider/gnunet-identity-token.c
gnunet/src/namecache/plugin_namecache_flat.c
Log:
-fix use after free
Modified: gnunet/src/identity-provider/gnunet-identity-token.c
===================================================================
--- gnunet/src/identity-provider/gnunet-identity-token.c 2016-08-26
12:49:15 UTC (rev 37796)
+++ gnunet/src/identity-provider/gnunet-identity-token.c 2016-08-26
12:52:33 UTC (rev 37797)
@@ -105,42 +105,48 @@
token = NULL;
if (print_token)
- printf ("Token:\nHeader:\t\t%s\nPayload:\t%s\n", header, payload);
+ printf ("Token:\nHeader:\t\t%s\nPayload:\t%s\n",
+ header,
+ payload);
GNUNET_free (header);
+
+ payload_json = json_loads (payload, 0, &error);
GNUNET_free (payload);
- payload_json = json_loads (payload, 0, &error);
- if ((NULL == payload_json) || !json_is_object (payload_json))
+ if ((NULL == payload_json) || (! json_is_object (payload_json)) )
{
GNUNET_free (val);
return;
}
keystring_json = json_object_get (payload_json, "iss");
- if (!json_is_string (keystring_json))
+ if (! json_is_string (keystring_json))
{
GNUNET_free (val);
return;
}
keystring = json_string_value (keystring_json);
- if (GNUNET_OK != GNUNET_CRYPTO_ecdsa_public_key_from_string (keystring,
- strlen
(keystring),
- &key))
+ if (GNUNET_OK !=
+ GNUNET_CRYPTO_ecdsa_public_key_from_string (keystring,
+ strlen (keystring),
+ &key))
{
GNUNET_free (val);
return;
}
GNUNET_STRINGS_string_to_data (signature_b32,
- strlen (signature_b32),
- &sig,
- sizeof (struct GNUNET_CRYPTO_EcdsaSignature));
+ strlen (signature_b32),
+ &sig,
+ sizeof (struct GNUNET_CRYPTO_EcdsaSignature));
if (print_token)
- printf ("Signature:\t%s\n", keystring);
+ printf ("Signature:\t%s\n",
+ keystring);
- if (GNUNET_OK !=
GNUNET_CRYPTO_ecdsa_verify(GNUNET_SIGNATURE_PURPOSE_GNUID_TOKEN,
- purpose,
- &sig,
- &key))
+ if (GNUNET_OK !=
+ GNUNET_CRYPTO_ecdsa_verify(GNUNET_SIGNATURE_PURPOSE_GNUID_TOKEN,
+ purpose,
+ &sig,
+ &key))
printf("Signature not OK!\n");
else
printf("Signature OK!\n");
Modified: gnunet/src/namecache/plugin_namecache_flat.c
===================================================================
--- gnunet/src/namecache/plugin_namecache_flat.c 2016-08-26 12:49:15 UTC
(rev 37796)
+++ gnunet/src/namecache/plugin_namecache_flat.c 2016-08-26 12:52:33 UTC
(rev 37797)
@@ -154,7 +154,8 @@
buffer[size] = '\0';
GNUNET_DISK_file_close (fh);
- if (0 < size) {
+ if (0 < size)
+ {
line = strtok (buffer, "\n");
while (line != NULL) {
query = strtok (line, ",");
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r37797 - in gnunet/src: identity-provider namecache,
gnunet <=