/* nettle, low-level cryptographics library
*
- * Copyright (C) 2002 Niels Möller
+ * Copyright (C) 2002 Niels Möller
*
* The nettle library is free software; you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
*
* You should have received a copy of the GNU Lesser General Public License
* along with the nettle library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
- * MA 02111-1307, USA.
+ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02111-1301, USA.
*/
#ifndef NETTLE_DSA_H_INCLUDED
#include "nettle-types.h"
-#include "sha.h"
-
-/* For nettle_random_func */
-#include "nettle-meta.h"
+#include "sha1.h"
+#include "sha2.h"
#ifdef __cplusplus
extern "C" {
int
dsa_sha1_sign(const struct dsa_public_key *pub,
const struct dsa_private_key *key,
- void *random_ctx, nettle_random_func random,
+ void *random_ctx, nettle_random_func *random,
struct sha1_ctx *hash,
struct dsa_signature *signature);
int
dsa_sha256_sign(const struct dsa_public_key *pub,
const struct dsa_private_key *key,
- void *random_ctx, nettle_random_func random,
+ void *random_ctx, nettle_random_func *random,
struct sha256_ctx *hash,
struct dsa_signature *signature);
int
dsa_sha1_sign_digest(const struct dsa_public_key *pub,
const struct dsa_private_key *key,
- void *random_ctx, nettle_random_func random,
+ void *random_ctx, nettle_random_func *random,
const uint8_t *digest,
struct dsa_signature *signature);
int
dsa_sha256_sign_digest(const struct dsa_public_key *pub,
const struct dsa_private_key *key,
- void *random_ctx, nettle_random_func random,
+ void *random_ctx, nettle_random_func *random,
const uint8_t *digest,
struct dsa_signature *signature);
dsa_generate_keypair(struct dsa_public_key *pub,
struct dsa_private_key *key,
- void *random_ctx, nettle_random_func random,
+ void *random_ctx, nettle_random_func *random,
- void *progress_ctx, nettle_progress_func progress,
+ void *progress_ctx, nettle_progress_func *progress,
unsigned p_bits, unsigned q_bits);
/* Keys in sexp form. */
int
_dsa_sign(const struct dsa_public_key *pub,
const struct dsa_private_key *key,
- void *random_ctx, nettle_random_func random,
+ void *random_ctx, nettle_random_func *random,
unsigned digest_size,
const uint8_t *digest,
struct dsa_signature *signature);