diff options
author | Christian Grothoff <christian@grothoff.org> | 2012-06-20 23:21:56 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2012-06-20 23:21:56 +0000 |
commit | aac68f1b5bef4240e42f9c5c2040195db07478b7 (patch) | |
tree | 15cb97e780c7cf97b374676c1f7676928401275a /src/namestore | |
parent | db141c2daac6c97ff63c2a4f99ad475da149f45c (diff) | |
download | gnunet-aac68f1b5bef4240e42f9c5c2040195db07478b7.tar.gz gnunet-aac68f1b5bef4240e42f9c5c2040195db07478b7.zip |
-code cleanup
Diffstat (limited to 'src/namestore')
-rw-r--r-- | src/namestore/namestore_api.c | 53 | ||||
-rw-r--r-- | src/namestore/test_namestore_api_create.c | 3 |
2 files changed, 28 insertions, 28 deletions
diff --git a/src/namestore/namestore_api.c b/src/namestore/namestore_api.c index e76b173b9..0f47750b3 100644 --- a/src/namestore/namestore_api.c +++ b/src/namestore/namestore_api.c | |||
@@ -1174,44 +1174,45 @@ GNUNET_NAMESTORE_verify_signature (const struct GNUNET_CRYPTO_RsaPublicKeyBinary | |||
1174 | const struct GNUNET_NAMESTORE_RecordData *rd, | 1174 | const struct GNUNET_NAMESTORE_RecordData *rd, |
1175 | const struct GNUNET_CRYPTO_RsaSignature *signature) | 1175 | const struct GNUNET_CRYPTO_RsaSignature *signature) |
1176 | { | 1176 | { |
1177 | int res = GNUNET_SYSERR; | 1177 | int res; |
1178 | size_t rd_ser_len = 0; | 1178 | size_t rd_ser_len; |
1179 | size_t name_len = 0; | 1179 | size_t name_len; |
1180 | char * name_tmp; | 1180 | char * name_tmp; |
1181 | char * rd_tmp; | 1181 | char * rd_tmp; |
1182 | struct GNUNET_CRYPTO_RsaSignaturePurpose *sig_purpose; | 1182 | struct GNUNET_CRYPTO_RsaSignaturePurpose *sig_purpose; |
1183 | struct GNUNET_TIME_AbsoluteNBO *expire_tmp; | 1183 | struct GNUNET_TIME_AbsoluteNBO *expire_tmp; |
1184 | struct GNUNET_TIME_AbsoluteNBO expire_nbo = GNUNET_TIME_absolute_hton(freshness); | 1184 | struct GNUNET_TIME_AbsoluteNBO expire_nbo = GNUNET_TIME_absolute_hton (freshness); |
1185 | 1185 | uint32_t sig_len; | |
1186 | GNUNET_assert (public_key != NULL); | ||
1187 | GNUNET_assert (name != NULL); | ||
1188 | GNUNET_assert (rd != NULL); | ||
1189 | GNUNET_assert (signature != NULL); | ||
1190 | |||
1191 | |||
1192 | rd_ser_len = GNUNET_NAMESTORE_records_get_size(rd_count, rd); | ||
1193 | char rd_ser[rd_ser_len]; | ||
1194 | GNUNET_NAMESTORE_records_serialize(rd_count, rd, rd_ser_len, rd_ser); | ||
1195 | 1186 | ||
1187 | GNUNET_assert (NULL != public_key); | ||
1188 | GNUNET_assert (NULL != name); | ||
1189 | GNUNET_assert (NULL != rd); | ||
1190 | GNUNET_assert (NULL != signature); | ||
1196 | name_len = strlen (name) + 1; | 1191 | name_len = strlen (name) + 1; |
1197 | if (name_len > 256) | 1192 | if (name_len > 256) |
1198 | { | 1193 | { |
1199 | GNUNET_break (0); | 1194 | GNUNET_break (0); |
1200 | return GNUNET_SYSERR; | 1195 | return GNUNET_SYSERR; |
1201 | } | 1196 | } |
1197 | rd_ser_len = GNUNET_NAMESTORE_records_get_size (rd_count, rd); | ||
1198 | { | ||
1199 | char rd_ser[rd_ser_len]; | ||
1200 | |||
1201 | GNUNET_assert (rd_ser_len == | ||
1202 | GNUNET_NAMESTORE_records_serialize (rd_count, rd, rd_ser_len, rd_ser)); | ||
1203 | sig_len = sizeof (struct GNUNET_CRYPTO_RsaSignaturePurpose) + sizeof (struct GNUNET_TIME_AbsoluteNBO) + rd_ser_len + name_len; | ||
1204 | sig_purpose = GNUNET_malloc (sig_len); | ||
1205 | sig_purpose->size = htonl (sig_len); | ||
1206 | sig_purpose->purpose = htonl (GNUNET_SIGNATURE_PURPOSE_GNS_RECORD_SIGN); | ||
1207 | expire_tmp = (struct GNUNET_TIME_AbsoluteNBO *) &sig_purpose[1]; | ||
1208 | memcpy (expire_tmp, &expire_nbo, sizeof (struct GNUNET_TIME_AbsoluteNBO)); | ||
1209 | name_tmp = (char *) &expire_tmp[1]; | ||
1210 | memcpy (name_tmp, name, name_len); | ||
1211 | rd_tmp = &name_tmp[name_len]; | ||
1212 | memcpy (rd_tmp, rd_ser, rd_ser_len); | ||
1213 | res = GNUNET_CRYPTO_rsa_verify(GNUNET_SIGNATURE_PURPOSE_GNS_RECORD_SIGN, sig_purpose, signature, public_key); | ||
1202 | 1214 | ||
1203 | sig_purpose = GNUNET_malloc(sizeof (struct GNUNET_CRYPTO_RsaSignaturePurpose) + sizeof (struct GNUNET_TIME_AbsoluteNBO) + rd_ser_len + name_len); | 1215 | } |
1204 | sig_purpose->size = htonl (sizeof (struct GNUNET_CRYPTO_RsaSignaturePurpose)+ rd_ser_len + name_len); | ||
1205 | sig_purpose->purpose = htonl (GNUNET_SIGNATURE_PURPOSE_GNS_RECORD_SIGN); | ||
1206 | expire_tmp = (struct GNUNET_TIME_AbsoluteNBO *) &sig_purpose[1]; | ||
1207 | name_tmp = (char *) &expire_tmp[1]; | ||
1208 | rd_tmp = &name_tmp[name_len]; | ||
1209 | memcpy (expire_tmp, &expire_nbo, sizeof (struct GNUNET_TIME_AbsoluteNBO)); | ||
1210 | memcpy (name_tmp, name, name_len); | ||
1211 | memcpy (rd_tmp, rd_ser, rd_ser_len); | ||
1212 | |||
1213 | res = GNUNET_CRYPTO_rsa_verify(GNUNET_SIGNATURE_PURPOSE_GNS_RECORD_SIGN, sig_purpose, signature, public_key); | ||
1214 | |||
1215 | GNUNET_free (sig_purpose); | 1216 | GNUNET_free (sig_purpose); |
1216 | 1217 | ||
1217 | return res; | 1218 | return res; |
diff --git a/src/namestore/test_namestore_api_create.c b/src/namestore/test_namestore_api_create.c index 6285895f2..a9956c53e 100644 --- a/src/namestore/test_namestore_api_create.c +++ b/src/namestore/test_namestore_api_create.c | |||
@@ -158,7 +158,6 @@ name_lookup_second_proc (void *cls, | |||
158 | failed = GNUNET_YES; | 158 | failed = GNUNET_YES; |
159 | } | 159 | } |
160 | 160 | ||
161 | |||
162 | if (GNUNET_OK != GNUNET_NAMESTORE_verify_signature(&pubkey, expire, n, rd_count, rd, signature)) | 161 | if (GNUNET_OK != GNUNET_NAMESTORE_verify_signature(&pubkey, expire, n, rd_count, rd, signature)) |
163 | { | 162 | { |
164 | GNUNET_break (0); | 163 | GNUNET_break (0); |
@@ -259,7 +258,7 @@ name_lookup_initial_proc (void *cls, | |||
259 | } | 258 | } |
260 | } | 259 | } |
261 | 260 | ||
262 | if (GNUNET_OK != GNUNET_NAMESTORE_verify_signature(&pubkey, expire,n, rd_count, rd, signature)) | 261 | if (GNUNET_OK != GNUNET_NAMESTORE_verify_signature (&pubkey, expire, n, rd_count, rd, signature)) |
263 | { | 262 | { |
264 | GNUNET_break (0); | 263 | GNUNET_break (0); |
265 | failed = GNUNET_YES; | 264 | failed = GNUNET_YES; |