You are viewing a plain text version of this content. The canonical link for it is here.
Posted to rampart-dev@ws.apache.org by ka...@apache.org on 2007/10/24 16:48:17 UTC

svn commit: r587901 - in /webservices/rampart/trunk/c: include/oxs_key.h src/omxmlsec/derivation.c src/omxmlsec/key.c src/util/rampart_encryption.c src/util/rampart_util.c

Author: kaushalye
Date: Wed Oct 24 07:48:15 2007
New Revision: 587901

URL: http://svn.apache.org/viewvc?rev=587901&view=rev
Log:
The key struct giving getter/setter methods for the nonce and the offset

Modified:
    webservices/rampart/trunk/c/include/oxs_key.h
    webservices/rampart/trunk/c/src/omxmlsec/derivation.c
    webservices/rampart/trunk/c/src/omxmlsec/key.c
    webservices/rampart/trunk/c/src/util/rampart_encryption.c
    webservices/rampart/trunk/c/src/util/rampart_util.c

Modified: webservices/rampart/trunk/c/include/oxs_key.h
URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/c/include/oxs_key.h?rev=587901&r1=587900&r2=587901&view=diff
==============================================================================
--- webservices/rampart/trunk/c/include/oxs_key.h (original)
+++ webservices/rampart/trunk/c/include/oxs_key.h Wed Oct 24 07:48:15 2007
@@ -103,6 +103,10 @@
         const oxs_key_t *key,
         const axutil_env_t *env);
 
+    AXIS2_EXTERN int AXIS2_CALL
+    oxs_key_get_offset(
+        const oxs_key_t *key,
+        const axutil_env_t *env);
     /**
     * Gets the offset of the key.
     * @param key oxs_key ptr to key
@@ -141,6 +145,17 @@
         const axutil_env_t *env,
         int usage);
 
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    oxs_key_set_nonce(
+        oxs_key_t *key,
+        const axutil_env_t *env,
+        axis2_char_t *nonce); 
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    oxs_key_set_offset(
+        oxs_key_t *key,
+        const axutil_env_t *env,
+        int offset);
     /**
     * Free function for key.
     * @param key oxs_key ptr to key

Modified: webservices/rampart/trunk/c/src/omxmlsec/derivation.c
URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/c/src/omxmlsec/derivation.c?rev=587901&r1=587900&r2=587901&view=diff
==============================================================================
--- webservices/rampart/trunk/c/src/omxmlsec/derivation.c (original)
+++ webservices/rampart/trunk/c/src/omxmlsec/derivation.c Wed Oct 24 07:48:15 2007
@@ -85,14 +85,9 @@
         dk_id,
         oxs_key_get_size(secret, env),
         oxs_key_get_usage(secret, env));
-        /*status = oxs_key_populate_with_buf(derived_key, env, 
-            oxs_key_get_buffer(secret, env), 
-            1,
-            2);
-            oxs_key_get_size(secret, env), 
-            oxs_key_get_usage(secret, env));
-    oxs_key_set_name(derived_key, env, dk_id);    */
- 
+    
+    oxs_key_set_nonce(derived_key, env, oxs_util_generate_nonce(env, 16)); /*Nonce length*/ 
+    oxs_key_set_offset(derived_key, env, 0); /*Default ??*/ 
 
     return status;
 }

Modified: webservices/rampart/trunk/c/src/omxmlsec/key.c
URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/c/src/omxmlsec/key.c?rev=587901&r1=587900&r2=587901&view=diff
==============================================================================
--- webservices/rampart/trunk/c/src/omxmlsec/key.c (original)
+++ webservices/rampart/trunk/c/src/omxmlsec/key.c Wed Oct 24 07:48:15 2007
@@ -94,6 +94,16 @@
     return key->usage;
 }
 
+AXIS2_EXTERN int AXIS2_CALL
+oxs_key_get_offset(
+    const oxs_key_t *key,
+    const axutil_env_t *env)
+{
+    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+
+    return key->offset;
+}
+
 
 AXIS2_EXTERN axis2_status_t AXIS2_CALL
 oxs_key_set_name(
@@ -145,7 +155,18 @@
 
     key->usage = usage;
     return AXIS2_SUCCESS;
+}
 
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+oxs_key_set_offset(
+    oxs_key_t *key,
+    const axutil_env_t *env,
+    int offset)
+{
+    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+
+    key->offset = offset;
+    return AXIS2_SUCCESS;
 }
 
 AXIS2_EXTERN oxs_key_t *AXIS2_CALL
@@ -305,7 +326,7 @@
 
     key_buf = oxs_buffer_create(env);
     /*The actual key generation happens here*/
-    ret = generate_random_data(env, key_buf, size);
+    ret = openssl_generate_random_data(env, key_buf, size);
     if (ret == AXIS2_FAILURE)
     {
         oxs_error(env, ERROR_LOCATION, OXS_ERROR_DEFAULT,

Modified: webservices/rampart/trunk/c/src/util/rampart_encryption.c
URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/c/src/util/rampart_encryption.c?rev=587901&r1=587900&r2=587901&view=diff
==============================================================================
--- webservices/rampart/trunk/c/src/util/rampart_encryption.c (original)
+++ webservices/rampart/trunk/c/src/util/rampart_encryption.c Wed Oct 24 07:48:15 2007
@@ -302,7 +302,7 @@
             /*Derive a new key*/
             derived_key = oxs_key_create(env);
             status = oxs_derivation_derive_key(env, session_key, NULL, NULL, derived_key); 
-
+            
             /*Set the derived key for the encryption*/
             oxs_ctx_set_key(enc_ctx, env, derived_key);
 

Modified: webservices/rampart/trunk/c/src/util/rampart_util.c
URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/c/src/util/rampart_util.c?rev=587901&r1=587900&r2=587901&view=diff
==============================================================================
--- webservices/rampart/trunk/c/src/util/rampart_util.c (original)
+++ webservices/rampart/trunk/c/src/util/rampart_util.c Wed Oct 24 07:48:15 2007
@@ -214,18 +214,6 @@
 AXIS2_EXTERN axis2_char_t* AXIS2_CALL
 rampart_generate_nonce(const axutil_env_t *env, int length)
 {
-    /*oxs_buffer_t *buffer = NULL;
-    axis2_status_t status = AXIS2_FAILURE;
-    char *rand_str = NULL;
-    axis2_char_t* encoded_str = NULL;
-
-    buffer = oxs_buffer_create(env);
-    status = generate_random_data(env, buffer, length);
-    rand_str = (char*)oxs_buffer_get_data(buffer, env);
-    encoded_str = AXIS2_MALLOC(env->allocator, sizeof(char) * (axutil_base64_encode_len(length)+1));
-    axutil_base64_encode(encoded_str, rand_str, oxs_buffer_get_size(buffer, env));
-    oxs_buffer_free(buffer, env);
-    */
     return oxs_util_generate_nonce(env, length);
 }