Author: milinda
Date: Tue Apr  8 04:23:53 2008
New Revision: 645856

URL: http://svn.apache.org/viewvc?rev=645856&view=rev
Log:
Adding key store support for retrieving private key.


Modified:
    webservices/rampart/scratch/c/pkcs/c/src/omxmlsec/key_mgr.c

Modified: webservices/rampart/scratch/c/pkcs/c/src/omxmlsec/key_mgr.c
URL: 
http://svn.apache.org/viewvc/webservices/rampart/scratch/c/pkcs/c/src/omxmlsec/key_mgr.c?rev=645856&r1=645855&r2=645856&view=diff
==============================================================================
--- webservices/rampart/scratch/c/pkcs/c/src/omxmlsec/key_mgr.c (original)
+++ webservices/rampart/scratch/c/pkcs/c/src/omxmlsec/key_mgr.c Tue Apr  8 
04:23:53 2008
@@ -239,45 +239,34 @@
     else
     {   /*Buffer is null load from the file*/
         prv_key_file = axutil_strdup(env, 
oxs_key_mgr_get_private_key_file(key_mgr, env));
-        if(!prv_key_file)
-        {
-            AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
-                            "[oxs][key_mgr]Private Key file is not 
specified.");
-            return NULL;
-        }
-
+       
         /*Get the password to retrieve the key from key store*/
         password = axutil_strdup(env, 
oxs_key_mgr_get_prv_key_password(key_mgr, env));
 
-        if(oxs_util_get_format_by_file_extension(env, prv_key_file) ==
-                OXS_ASYM_CTX_FORMAT_PKCS12)
-        {
-            oxs_x509_cert_t *c = NULL;
-            if((oxs_key_mgr_read_pkcs12_key_store(env, prv_key_file,
-                                                  password, &c, 
&prvkey)==AXIS2_FAILURE) || !prvkey)
-            {
-                AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
-                                "[rampart][rampart_signature] Cannot load the 
private key from pfx file.");
-                return NULL;
-            }
-        }
-        else if(oxs_util_get_format_by_file_extension(env, prv_key_file)
-                ==OXS_ASYM_CTX_FORMAT_PEM)
+        if(prv_key_file)
         {
-            prvkey = oxs_key_mgr_load_private_key_from_pem_file(
-                         env, prv_key_file, password);
-            if(!prvkey)
-            {
-                AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
-                                "[rampart][rampart_signature] Cannot load the 
private key from file.");
-                return NULL;
-            }
+               if(oxs_util_get_format_by_file_extension(env, prv_key_file)
+                       ==OXS_ASYM_CTX_FORMAT_PEM)
+               {
+                   prvkey = oxs_key_mgr_load_private_key_from_pem_file(
+                                env, prv_key_file, password);
+                   if(!prvkey)
+                   {
+                       AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
+                                       "[rampart][key_mgr] Cannot load the 
private key from file.");
+                       return NULL;
+                   }
+               }  
         }
         else
         {
-            AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
-                            "[rampart][rampart_signature] Unknown Private key 
format.");
-            return NULL;
+               prvkey =  
pkcs12_keystore_get_owner_private_key(key_mgr->key_store, env);
+               if(!prvkey)
+            {
+                       AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
+                                       "[rampart][key_mgr] Cannot load the 
private key from pkcs12 key store.");
+                       return NULL;
+               }
         }
     }
     return prvkey;


Reply via email to