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/08/21 10:13:56 UTC
svn commit: r568008 - in /webservices/rampart/trunk/c: include/oxs_buffer.h
include/oxs_key.h src/omxmlsec/buffer.c src/omxmlsec/key.c
Author: kaushalye
Date: Tue Aug 21 01:13:56 2007
New Revision: 568008
URL: http://svn.apache.org/viewvc?rev=568008&view=rev
Log:
Added duplicating functionalities for key and buffer classes
Modified:
webservices/rampart/trunk/c/include/oxs_buffer.h
webservices/rampart/trunk/c/include/oxs_key.h
webservices/rampart/trunk/c/src/omxmlsec/buffer.c
webservices/rampart/trunk/c/src/omxmlsec/key.c
Modified: webservices/rampart/trunk/c/include/oxs_buffer.h
URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/c/include/oxs_buffer.h?rev=568008&r1=568007&r2=568008&view=diff
==============================================================================
--- webservices/rampart/trunk/c/include/oxs_buffer.h (original)
+++ webservices/rampart/trunk/c/include/oxs_buffer.h Tue Aug 21 01:13:56 2007
@@ -213,7 +213,8 @@
const axutil_env_t *env
);
-
+ oxs_buffer_t *AXIS2_CALL
+ oxs_buffer_dup(oxs_buffer_t *buffer, const axutil_env_t *env);
AXIS2_EXTERN oxs_buffer_t *AXIS2_CALL
oxs_buffer_create(const axutil_env_t *env);
Modified: webservices/rampart/trunk/c/include/oxs_key.h
URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/c/include/oxs_key.h?rev=568008&r1=568007&r2=568008&view=diff
==============================================================================
--- webservices/rampart/trunk/c/include/oxs_key.h (original)
+++ webservices/rampart/trunk/c/include/oxs_key.h Tue Aug 21 01:13:56 2007
@@ -26,6 +26,7 @@
#include <axis2_defines.h>
#include <oxs_constants.h>
+#include <oxs_buffer.h>
#include <axutil_env.h>
#ifdef __cplusplus
@@ -131,6 +132,13 @@
const axutil_env_t *env
);
+ axis2_status_t AXIS2_CALL
+ oxs_key_populate_with_buf(oxs_key_t *key,
+ const axutil_env_t *env,
+ oxs_buffer_t *buffer,
+ axis2_char_t *name,
+ int usage);
+
/**
* Populate a key.
* @param key oxs_key ptr to key
@@ -173,6 +181,14 @@
const axutil_env_t *env,
axis2_char_t *key_algo);
+
+ oxs_buffer_t *AXIS2_CALL
+ oxs_key_get_buffer(const oxs_key_t *key,
+ const axutil_env_t *env);
+
+ oxs_key_t *AXIS2_CALL
+ oxs_key_dup(oxs_key_t *key,
+ const axutil_env_t *env);
AXIS2_EXTERN oxs_key_t *AXIS2_CALL
oxs_key_create(const axutil_env_t *env);
Modified: webservices/rampart/trunk/c/src/omxmlsec/buffer.c
URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/c/src/omxmlsec/buffer.c?rev=568008&r1=568007&r2=568008&view=diff
==============================================================================
--- webservices/rampart/trunk/c/src/omxmlsec/buffer.c (original)
+++ webservices/rampart/trunk/c/src/omxmlsec/buffer.c Tue Aug 21 01:13:56 2007
@@ -68,6 +68,18 @@
}
+oxs_buffer_t *AXIS2_CALL
+oxs_buffer_dup(oxs_buffer_t *buffer, const axutil_env_t *env)
+{
+ oxs_buffer_t *buf = NULL;
+ axis2_status_t status = AXIS2_FAILURE;
+
+ AXIS2_ENV_CHECK(env, NULL);
+ buf = oxs_buffer_create(env);
+ status = oxs_buffer_populate(buf, env, oxs_buffer_get_data(buffer, env), oxs_buffer_get_size(buffer, env));
+ return buf;
+}
+
axis2_status_t AXIS2_CALL
oxs_buffer_free(
oxs_buffer_t *buffer,
Modified: webservices/rampart/trunk/c/src/omxmlsec/key.c
URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/c/src/omxmlsec/key.c?rev=568008&r1=568007&r2=568008&view=diff
==============================================================================
--- webservices/rampart/trunk/c/src/omxmlsec/key.c (original)
+++ webservices/rampart/trunk/c/src/omxmlsec/key.c Tue Aug 21 01:13:56 2007
@@ -54,6 +54,14 @@
}
+oxs_buffer_t *AXIS2_CALL
+oxs_key_get_buffer(const oxs_key_t *key,
+ const axutil_env_t *env)
+{
+ AXIS2_ENV_CHECK(env, NULL);
+ return key->buf;
+}
+
int AXIS2_CALL
oxs_key_get_size(
const oxs_key_t *key,
@@ -109,7 +117,31 @@
}
+AXIS2_EXTERN oxs_key_t *AXIS2_CALL
+oxs_key_dup(oxs_key_t *key,
+ const axutil_env_t *env)
+{
+ oxs_key_t *new_key = NULL;
+ AXIS2_ENV_CHECK(env, NULL);
+
+ AXIS2_PARAM_CHECK(env->error, key, NULL);
+
+ new_key = oxs_key_create(env);
+ if (!new_key)
+ {
+ AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
+ return NULL;
+ }
+
+
+ oxs_key_populate_with_buf(new_key,
+ env,
+ oxs_key_get_buffer(key, env),
+ axutil_strdup(env, key->name),
+ key->usage);
+ return key;
+}
AXIS2_EXTERN oxs_key_t *AXIS2_CALL
oxs_key_create(const axutil_env_t *env)
@@ -150,6 +182,23 @@
AXIS2_FREE(env->allocator, key);
key = NULL;
+ return AXIS2_SUCCESS;
+}
+
+axis2_status_t AXIS2_CALL
+oxs_key_populate_with_buf(oxs_key_t *key,
+ const axutil_env_t *env,
+ oxs_buffer_t *buffer,
+ axis2_char_t *name,
+ int usage)
+{
+ int ret;
+ AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+
+ ret = oxs_key_set_name(key, env, name);
+ ret = oxs_key_set_usage(key, env, usage);
+
+ ret = oxs_buffer_populate(key->buf, env, oxs_buffer_get_data(buffer, env), oxs_buffer_get_size(buffer, env));
return AXIS2_SUCCESS;
}