X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=crypt.c;h=c1a2d4e5c8ccd67007ab96bf751ef9d35eaf465b;hp=34eeb407ed6a33a2487e449dcb87b297b89c6e85;hb=505cfe0c6c8f9ef79d259ee64404ab40f2057081;hpb=a27ec6094608c05a9f87e445902c29d15ca11547 diff --git a/crypt.c b/crypt.c index 34eeb407..c1a2d4e5 100644 --- a/crypt.c +++ b/crypt.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2005-2006 Andre Noll + * Copyright (C) 2005-2007 Andre Noll * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -18,15 +18,10 @@ /** \file crypt.c openssl-based RSA encryption/decryption routines */ -#include #include "para.h" #include "error.h" #include "string.h" - -/** \cond used to distinguish between loading of private/public key */ -#define LOAD_PUBLIC_KEY 0 -#define LOAD_PRIVATE_KEY 1 -/** \endcond **/ +#include "crypt.h" static EVP_PKEY *load_key(const char *file, int private) { @@ -46,7 +41,17 @@ static EVP_PKEY *load_key(const char *file, int private) return pkey; } - +/** + * read an RSA key from a file + * + * \param key_file the file containing the key + * \param rsa RSA structure is returned here + * \param private if non-zero, read the private key, otherwise the public key + * + * \return The size of the RSA key on success, negative on errors. + * + * \sa openssl(1), rsa(1). + */ int get_rsa_key(char *key_file, RSA **rsa, int private) { EVP_PKEY *key = load_key(key_file, private);