Author: kaushalye
Date: Wed Dec 12 01:26:21 2007
New Revision: 603521

URL: http://svn.apache.org/viewvc?rev=603521&view=rev
Log:
New EncryptedHeader node to the token base

Added:
    webservices/rampart/trunk/c/src/omxmlsec/tokens/token_encrypted_header.c
Modified:
    webservices/rampart/trunk/c/NEWS
    webservices/rampart/trunk/c/include/oxs_constants.h
    webservices/rampart/trunk/c/include/oxs_tokens.h
    webservices/rampart/trunk/c/src/omxmlsec/tokens/Makefile.am
    webservices/rampart/trunk/c/src/util/rampart_handler_util.c

Modified: webservices/rampart/trunk/c/NEWS
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/NEWS?rev=603521&r1=603520&r2=603521&view=diff
==============================================================================
--- webservices/rampart/trunk/c/NEWS (original)
+++ webservices/rampart/trunk/c/NEWS Wed Dec 12 01:26:21 2007
@@ -63,7 +63,6 @@
 1. SAML support 
 2. WS-Secure conversation
 3. WS-Trust
-4. Some WS-Security 1.1 features
 
 
 We welcome your early feedback on this implementation.

Modified: webservices/rampart/trunk/c/include/oxs_constants.h
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/include/oxs_constants.h?rev=603521&r1=603520&r2=603521&view=diff
==============================================================================
--- webservices/rampart/trunk/c/include/oxs_constants.h (original)
+++ webservices/rampart/trunk/c/include/oxs_constants.h Wed Dec 12 01:26:21 2007
@@ -386,7 +386,7 @@
         WS Security 1.1
     ****************************************************************/
 #define OXS_WSS_11_VALUE_TYPE_ENCRYPTED_KEY 
"http://docs.oasis-open.org/wss/oasis-wss-soap-message-security-1.1#EncryptedKey";
-
+#define OXS_NODE_ENCRYPTED_HEADER "EncryptedHeader"
     /*************************************************************************/
 
 

Modified: webservices/rampart/trunk/c/include/oxs_tokens.h
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/include/oxs_tokens.h?rev=603521&r1=603520&r2=603521&view=diff
==============================================================================
--- webservices/rampart/trunk/c/include/oxs_tokens.h (original)
+++ webservices/rampart/trunk/c/include/oxs_tokens.h Wed Dec 12 01:26:21 2007
@@ -322,6 +322,15 @@
                axiom_node_t * parent,
                axis2_char_t * id);
 
+    /**
+    * Creates <wss11:EncryptedHeader> element
+    */
+    AXIS2_EXTERN axiom_node_t * AXIS2_CALL
+    oxs_token_build_enc_header_element(
+               const axutil_env_t * env,
+               axiom_node_t * parent,
+               axis2_char_t * id);
+
        /**
         * Creates <ds:SignatureMethod> element
         */

Modified: webservices/rampart/trunk/c/src/omxmlsec/tokens/Makefile.am
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/src/omxmlsec/tokens/Makefile.am?rev=603521&r1=603520&r2=603521&view=diff
==============================================================================
--- webservices/rampart/trunk/c/src/omxmlsec/tokens/Makefile.am (original)
+++ webservices/rampart/trunk/c/src/omxmlsec/tokens/Makefile.am Wed Dec 12 
01:26:21 2007
@@ -9,7 +9,8 @@
                                                token_c14n_method.c 
token_signature_method.c token_digest_method.c token_digest_value.c \
                                                token_transform.c 
token_transforms.c token_signature.c token_ds_reference.c \
                                                token_x509_certificate.c 
token_signature_confirmation.c token_derived_key_token.c \
-                                               token_properties.c 
token_generation.c token_length.c token_nonce.c token_offset.c token_label.c
+                                               token_properties.c 
token_generation.c token_length.c token_nonce.c token_offset.c token_label.c \
+                                               token_encrypted_header.c
 
 
 INCLUDES = -I$(top_builddir)/include \

Added: webservices/rampart/trunk/c/src/omxmlsec/tokens/token_encrypted_header.c
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/src/omxmlsec/tokens/token_encrypted_header.c?rev=603521&view=auto
==============================================================================
--- webservices/rampart/trunk/c/src/omxmlsec/tokens/token_encrypted_header.c 
(added)
+++ webservices/rampart/trunk/c/src/omxmlsec/tokens/token_encrypted_header.c 
Wed Dec 12 01:26:21 2007
@@ -0,0 +1,59 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <stdio.h>
+#include <oxs_constants.h>
+#include <oxs_error.h>
+#include <oxs_tokens.h>
+#include <axiom_attribute.h>
+#include <axiom_element.h>
+
+
+
+AXIS2_EXTERN axiom_node_t* AXIS2_CALL
+oxs_token_build_enc_header_element(const axutil_env_t *env,
+                                  axiom_node_t *parent,
+                                  axis2_char_t* id)
+{
+    axiom_node_t *enc_header_node = NULL;
+    axiom_element_t *enc_header_ele = NULL;
+    axiom_attribute_t *id_attr = NULL;
+    axiom_namespace_t *ns_obj = NULL;
+    int ret;
+
+    ns_obj = axiom_namespace_create(env, OXS_WSSE_11_XMLNS,
+                                    OXS_WSSE_11);
+
+    enc_header_ele = axiom_element_create(env, parent, OXS_NODE_SIGNATURE, 
ns_obj, &enc_header_node);
+    if (!enc_header_ele)
+    {
+        oxs_error(env, ERROR_LOCATION,
+                  OXS_ERROR_ELEMENT_FAILED, "Error creating 
wss11:EncryptedHeader element");
+        return NULL;
+    }
+
+    /*If id is not NULL then add it as an attribute*/
+    if (id)
+    {
+        id_attr = axiom_attribute_create(env, OXS_ATTR_ID, id, NULL);
+        ret = axiom_element_add_attribute(enc_header_ele, env, id_attr, 
enc_header_node);
+    }
+
+    return enc_header_node;
+
+}
+

Modified: webservices/rampart/trunk/c/src/util/rampart_handler_util.c
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/src/util/rampart_handler_util.c?rev=603521&r1=603520&r2=603521&view=diff
==============================================================================
--- webservices/rampart/trunk/c/src/util/rampart_handler_util.c (original)
+++ webservices/rampart/trunk/c/src/util/rampart_handler_util.c Wed Dec 12 
01:26:21 2007
@@ -135,8 +135,9 @@
         {
             /*Set mustUnderstand = 0*/
             
axiom_soap_header_block_set_must_understand_with_bool(header_block, env, 
AXIS2_FALSE);
-            if (env)
+            if (env){
                 AXIS2_FREE(env->allocator, hash_index);
+            }
             return header_block_node;
         }
 


Reply via email to