aboutsummaryrefslogtreecommitdiffstats
path: root/Source/charon/config/configuration_manager.h
diff options
context:
space:
mode:
authorMartin Willi <martin@strongswan.org>2005-12-04 01:30:35 +0000
committerMartin Willi <martin@strongswan.org>2005-12-04 01:30:35 +0000
commit8ff8c33d1d720a227db193c2105cbdcf119e5746 (patch)
tree7de51ee9de420cf13eca9c91f4dfb70901d41e10 /Source/charon/config/configuration_manager.h
parenta374d1ee669a6b7674f242119369770cb9e5705c (diff)
downloadstrongswan-8ff8c33d1d720a227db193c2105cbdcf119e5746.tar.bz2
strongswan-8ff8c33d1d720a227db193c2105cbdcf119e5746.tar.xz
- implemented RSA, only signing and verifying esma_pkcs1 padded
- removed gmp-helper: chunk_to_mpz is now done with gmp functions, prime generation in prime-pool - added prime-pool (needs priority fix) - proof of concept RSA authentication - mpz uses LEAK_DETECTIVE - configuration-manager supports rsa keys
Diffstat (limited to 'Source/charon/config/configuration_manager.h')
-rw-r--r--Source/charon/config/configuration_manager.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/Source/charon/config/configuration_manager.h b/Source/charon/config/configuration_manager.h
index fe01615a2..8b51a24f9 100644
--- a/Source/charon/config/configuration_manager.h
+++ b/Source/charon/config/configuration_manager.h
@@ -26,6 +26,8 @@
#include <types.h>
#include <config/init_config.h>
#include <config/sa_config.h>
+#include <transforms/rsa/rsa_private_key.h>
+#include <transforms/rsa/rsa_public_key.h>
typedef struct configuration_manager_t configuration_manager_t;
@@ -133,6 +135,36 @@ struct configuration_manager_t {
* - SUCCESS
*/
status_t (*get_shared_secret) (configuration_manager_t *this, identification_t *identification, chunk_t *preshared_secret);
+
+ /**
+ * Get the RSA public key of a specific ID.
+ *
+ * Object is not cloned and shuld not be destroyed.
+ *
+ * @param this calling object
+ * @param identification identification_t object identifiying the ID.
+ * @param[out] public_key the public key will be written there
+ *
+ * @return
+ * - NOT_FOUND if no key is configured for specific id
+ * - SUCCESS
+ */
+ status_t (*get_rsa_public_key) (configuration_manager_t *this, identification_t *identification, rsa_public_key_t **public_key);
+
+ /**
+ * Get the RSA public key of a specific ID.
+ *
+ * Object is not cloned and shuld not be destroyed.
+ *
+ * @param this calling object
+ * @param identification identification_t object identifiying the ID.
+ * @param[out] private_key the private key will be written there
+ *
+ * @return
+ * - NOT_FOUND if no key is configured for specific id
+ * - SUCCESS
+ */
+ status_t (*get_rsa_private_key) (configuration_manager_t *this, identification_t *identification, rsa_private_key_t **private_key);
/**
* Destroys configuration manager