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/05/15 09:56:23 UTC

svn commit: r538082 - in /webservices/rampart/trunk/c: include/rp_defines.h include/rp_rampart_config.h samples/secpolicy/scenario9/service-incoming-secpolicy.xml src/secpolicy/builder/rampart_config_builder.c src/secpolicy/model/rampart_config.c

Author: kaushalye
Date: Tue May 15 00:56:21 2007
New Revision: 538082

URL: http://svn.apache.org/viewvc?view=rev&rev=538082
Log:
Replay detection needs to have properties in the rampart config

Modified:
    webservices/rampart/trunk/c/include/rp_defines.h
    webservices/rampart/trunk/c/include/rp_rampart_config.h
    webservices/rampart/trunk/c/samples/secpolicy/scenario9/service-incoming-secpolicy.xml
    webservices/rampart/trunk/c/src/secpolicy/builder/rampart_config_builder.c
    webservices/rampart/trunk/c/src/secpolicy/model/rampart_config.c

Modified: webservices/rampart/trunk/c/include/rp_defines.h
URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/c/include/rp_defines.h?view=diff&rev=538082&r1=538081&r2=538082
==============================================================================
--- webservices/rampart/trunk/c/include/rp_defines.h (original)
+++ webservices/rampart/trunk/c/include/rp_defines.h Tue May 15 00:56:21 2007
@@ -199,6 +199,7 @@
 #define RP_CERTIFICATE "Certificate"
 #define RP_PRIVATE_KEY "PrivateKey"
 #define RP_TIME_TO_LIVE "TimeToLive"
+#define RP_RD "ReplayDetection"
 
 #define RP_SP_NS "http://schemas.xmlsoap.org/ws/2005/07/securitypolicy"
 #define RP_SECURITY_NS "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"

Modified: webservices/rampart/trunk/c/include/rp_rampart_config.h
URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/c/include/rp_rampart_config.h?view=diff&rev=538082&r1=538081&r2=538082
==============================================================================
--- webservices/rampart/trunk/c/include/rp_rampart_config.h (original)
+++ webservices/rampart/trunk/c/include/rp_rampart_config.h Tue May 15 00:56:21 2007
@@ -127,7 +127,15 @@
     rp_rampart_config_set_time_to_live(rp_rampart_config_t *rampart_config,
                                        const axutil_env_t *env,
                                        axis2_char_t *time_to_live);
+AXIS2_EXTERN axis2_char_t *AXIS2_CALL
+rp_rampart_config_get_rd_val(
+    rp_rampart_config_t *rampart_config,
+    const axutil_env_t *env);
 
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+rp_rampart_config_set_rd_val(rp_rampart_config_t *rampart_config,
+            const axutil_env_t *env,
+            axis2_char_t *rd_val);
 #ifdef __cplusplus
 }
 #endif

Modified: webservices/rampart/trunk/c/samples/secpolicy/scenario9/service-incoming-secpolicy.xml
URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/c/samples/secpolicy/scenario9/service-incoming-secpolicy.xml?view=diff&rev=538082&r1=538081&r2=538082
==============================================================================
--- webservices/rampart/trunk/c/samples/secpolicy/scenario9/service-incoming-secpolicy.xml (original)
+++ webservices/rampart/trunk/c/samples/secpolicy/scenario9/service-incoming-secpolicy.xml Tue May 15 00:56:21 2007
@@ -41,6 +41,7 @@
                 <rampc:Element Name="To" Namespace="http://www.w3.org/2005/08/addressing"/>
             </rampc:SignedItems>
             <rampc:RampartConfig xmlns:rampc="http://ws.apache.org/rampart/c/policy">
+                <rampc:ReplayDetection>200</rampc:ReplayDetection>
                 <rampc:EncryptionUser>b</rampc:EncryptionUser>
                 <rampc:PasswordCallbackClass>AXIS2C_HOME/bin/samples/rampart/callback/libpwcb.so</rampc:PasswordCallbackClass>
                 <rampc:Certificate>AXIS2C_HOME/bin/samples/rampart/keys/bhome/b_cert.cert</rampc:Certificate>

Modified: webservices/rampart/trunk/c/src/secpolicy/builder/rampart_config_builder.c
URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/c/src/secpolicy/builder/rampart_config_builder.c?view=diff&rev=538082&r1=538081&r2=538082
==============================================================================
--- webservices/rampart/trunk/c/src/secpolicy/builder/rampart_config_builder.c (original)
+++ webservices/rampart/trunk/c/src/secpolicy/builder/rampart_config_builder.c Tue May 15 00:56:21 2007
@@ -192,5 +192,20 @@
         else
             return AXIS2_FAILURE;
     }
+    else if(axutil_strcmp(local_name, RP_RD) == 0)
+    {
+        if(rp_match_rampart_config_qname(env, RP_RD,node,element))
+        {
+            axis2_char_t *rd_val = NULL;
+            rd_val = axiom_element_get_text(element, env, node);
+            printf("rd_val = %s", rd_val);
+            rp_rampart_config_set_rd_val(rampart_config, env, rd_val);
+            return AXIS2_SUCCESS;
+        }else{
+            return AXIS2_FAILURE;
+        }
+    }
     else return AXIS2_FAILURE;
 }
+
+

Modified: webservices/rampart/trunk/c/src/secpolicy/model/rampart_config.c
URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/c/src/secpolicy/model/rampart_config.c?view=diff&rev=538082&r1=538081&r2=538082
==============================================================================
--- webservices/rampart/trunk/c/src/secpolicy/model/rampart_config.c (original)
+++ webservices/rampart/trunk/c/src/secpolicy/model/rampart_config.c Tue May 15 00:56:21 2007
@@ -29,6 +29,7 @@
     axis2_char_t *receiver_certificate_file;
     axis2_char_t *certificate_file;
     axis2_char_t *private_key_file;
+    axis2_char_t *rd_val;
 };
 
 AXIS2_EXTERN rp_rampart_config_t *AXIS2_CALL 
@@ -55,6 +56,7 @@
     rampart_config->authenticate_module = NULL;
     rampart_config->password_type = NULL;
     rampart_config->time_to_live = NULL;
+    rampart_config->rd_val = NULL;
     return rampart_config;
 }
 
@@ -273,5 +275,27 @@
     AXIS2_PARAM_CHECK(env->error,time_to_live,AXIS2_FAILURE);   
         
     rampart_config->time_to_live = time_to_live;
+    return AXIS2_SUCCESS;
+}
+
+AXIS2_EXTERN axis2_char_t *AXIS2_CALL
+rp_rampart_config_get_rd_val(
+    rp_rampart_config_t *rampart_config,
+    const axutil_env_t *env)
+{
+    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+
+    return rampart_config->rd_val;
+}
+
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+rp_rampart_config_set_rd_val(rp_rampart_config_t *rampart_config,
+            const axutil_env_t *env,
+            axis2_char_t *rd_val)
+{
+    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+    AXIS2_PARAM_CHECK(env->error, rd_val, AXIS2_FAILURE);   
+        
+    rampart_config->rd_val = rd_val;
     return AXIS2_SUCCESS;
 }