projects
/
silc.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
PKCS API changes.
[silc.git]
/
lib
/
silccore
/
silcmessage.c
diff --git
a/lib/silccore/silcmessage.c
b/lib/silccore/silcmessage.c
index a308456be89c85db6a92d5fc3b562549546979a5..2b817ba708c79f8232272163659e0269db427f2e 100644
(file)
--- a/
lib/silccore/silcmessage.c
+++ b/
lib/silccore/silcmessage.c
@@
-44,6
+44,7
@@
typedef struct {
SilcMessageFlags flags;
SilcPublicKey public_key;
SilcPrivateKey private_key;
SilcMessageFlags flags;
SilcPublicKey public_key;
SilcPrivateKey private_key;
+ SilcRng rng;
SilcHash hash;
SilcCipher cipher;
SilcHmac hmac;
SilcHash hash;
SilcCipher cipher;
SilcHmac hmac;
@@
-292,6
+293,7
@@
silc_message_signed_payload_encode(SilcBuffer payload,
SilcUInt32 pk_len = 0;
SilcUInt16 pk_type;
SilcStack stack = e->stack;
SilcUInt32 pk_len = 0;
SilcUInt16 pk_type;
SilcStack stack = e->stack;
+ SilcRng rng = e->rng;
SilcHash hash = e->hash;
SilcPublicKey public_key = e->public_key;
SilcPrivateKey private_key = e->private_key;
SilcHash hash = e->hash;
SilcPublicKey public_key = e->public_key;
SilcPrivateKey private_key = e->private_key;
@@
-334,7
+336,8
@@
silc_message_signed_payload_encode(SilcBuffer payload,
/* Compute signature */
op = silc_pkcs_sign(private_key, sign->data, silc_buffer_len(sign),
/* Compute signature */
op = silc_pkcs_sign(private_key, sign->data, silc_buffer_len(sign),
- TRUE, hash, silc_message_signed_payload_encode_cb, e);
+ TRUE, hash, rng,
+ silc_message_signed_payload_encode_cb, e);
return op;
}
return op;
}
@@
-762,6
+765,7
@@
silc_message_payload_encode(SilcMessageFlags flags,
e->flags = flags;
e->public_key = public_key;
e->private_key = private_key;
e->flags = flags;
e->public_key = public_key;
e->private_key = private_key;
+ e->rng = rng;
e->hash = hash;
e->cipher = cipher;
e->hmac = hmac;
e->hash = hash;
e->cipher = cipher;
e->hmac = hmac;
@@
-873,8
+877,8
@@
silc_message_signed_verify(SilcMessagePayload message,
/* Verify the authentication data */
op = silc_pkcs_verify(remote_public_key, sig->sign_data, sig->sign_len,
/* Verify the authentication data */
op = silc_pkcs_verify(remote_public_key, sig->sign_data, sig->sign_len,
- silc_buffer_data(sign), silc_buffer_len(sign),
hash,
- result, context);
+ silc_buffer_data(sign), silc_buffer_len(sign),
+
hash, NULL,
result, context);
silc_buffer_clear(sign);
silc_buffer_sfree(stack, sign);
silc_buffer_clear(sign);
silc_buffer_sfree(stack, sign);