+static void rsa_sethash(struct rsacommon *c, struct hash_if *hash,
+ const struct hash_if **in_ops)
+{
+ free(c->hashbuf);
+ c->hashbuf=safe_malloc(hash->hlen, "generate_msg");
+ *in_ops=hash;
+}
+static void rsa_pub_sethash(void *sst, struct hash_if *hash)
+{
+ struct rsapub *st=sst;
+ rsa_sethash(&st->common, hash, &st->ops.hash);
+}
+static void rsa_priv_sethash(void *sst, struct hash_if *hash)
+{
+ struct rsapriv *st=sst;
+ rsa_sethash(&st->common, hash, &st->ops.hash);
+}
+