Files
bind9/lib/dns/sec/dnssafe/rsa.h
David Lawrence 4be63b1fd8 144. [cleanup] libdns header files too numerous to name were made
to conform to the same style for multiple inclusion
                        protection.
2000-04-29 02:02:38 +00:00

46 lines
1.3 KiB
C

/* Copyright (C) RSA Data Security, Inc. created 1994, 1996. This is an
unpublished work protected as such under copyright law. This work
contains proprietary, confidential, and trade secret information of
RSA Data Security, Inc. Use, disclosure or reproduction without the
express written authorization of RSA Data Security, Inc. is
prohibited.
*/
#ifndef DNSSAFE_RSA_H
#define DNSSAFE_RSA_H 1
#include "bigmaxes.h"
#ifdef __cplusplus
extern "C" {
#endif
/* Note, these are only valid after a call to A_RSAInit.
*/
#define A_RSA_BLOCK_LEN(context) ((context)->blockLen)
#define A_RSA_MAX_OUTPUT_LEN(context, inputLen)\
(inputLen) + (((inputLen) % (context)->blockLen) ?\
(context)->blockLen - ((inputLen) % (context)->blockLen) : 0)
typedef struct {
unsigned int blockLen; /* total size for the block to be computed */
unsigned char input[MAX_RSA_MODULUS_LEN];
unsigned int inputLen;
unsigned int modulusWords;
UINT2 modulus[MAX_RSA_MODULUS_WORDS];
UINT2 exponent[MAX_RSA_MODULUS_WORDS];
} A_RSA_CTX;
int A_RSAInit PROTO_LIST ((A_RSA_CTX *, A_RSA_KEY *));
int A_RSAUpdate PROTO_LIST
((A_RSA_CTX *, unsigned char *, unsigned int *, unsigned int,
unsigned char *, unsigned int, A_SURRENDER_CTX *));
int A_RSAFinal PROTO_LIST ((A_RSA_CTX *));
#ifdef __cplusplus
}
#endif
#endif /* DNSSAFE_RSA_H */